– Det kuleste browser-API-et du ikke bruker enda
HTML Invoker Commands API har nådd baseline-støtte.
HTML Invoker Commands API har nå nådd baseline-støtte i alle de store nettleserne. Safari 26.2 fullførte nylig utrullingen, etter at funksjonen allerede var på plass i Chrome 135 og Firefox 144.
Utvikler Usman Writes, som skriver om det på Medium.com, mener det er "det kuleste API-et du ikke bruker enda".
API-en introduserer deklarative knappekontroller som gjør det mulig å jobbe med popovers, dialoger og andre interaktive elementer – helt uten JavaScript, forteller nettsiden infoq.com.
Mindre JavaScript, mer HTML
Invoker Commands API legger til to nye attributter på knappe-elementer: commandfor og command.
-
commandfor peker på ID-en til elementet som skal styres.
-
command definerer hvilken handling som skal utføres.
<button commandfor="mypopover" command="toggle-popover">
Toggle the popover
</button>
<div id="mypopover" popover>
<button commandfor="mypopover" command="hide-popover">Close</button>
Popover content
</div>
Denne tilnærmingen gjør det mulig å lage interaktive komponenter uten å måtte vente på at JavaScript lastes ned og kjøres – noe som gir raskere førstegangsinteraktivitet og bedre ytelse.
Slik som kommandoen "toggle-popover", som man kan bruke til å trigge en dialogboks.
Ikke helt ukontroversielt
Alle er likevel ikke udelt positive. CSS-Tricks peker på at egendefinerte kommandoer i praksis er avhengige av HTML-attributter som fungerer som event-handlere.
De mener dette kan være dårlig praksis.
Det er likevel alltid spennende når browsere får funksjonalitet innebygd som mange tidligere ville tydd til et JavaScript-rammeverk for å gjennomføre.
Invoker Commands API-et er kommet for å bli og har allerede fått en grundig dokumentasjonsside på MDN.