XML-händelser
Inom datavetenskap och webbutveckling är XML Events en W3C- standard för hantering av händelser som inträffar i ett XML -dokument . Dessa händelser orsakas vanligtvis av användare som interagerar med webbsidan med hjälp av en enhet, till exempel en webbläsare på en persondator eller mobiltelefon .
Formell definition
En XML-händelse är representationen av någon asynkron förekomst (som ett musknappsklick ) som associeras med ett dataelement i ett XML -dokument. XML Events tillhandahåller en statisk, syntaktisk bindning till DOM Events- gränssnittet, vilket gör att händelsen kan hanteras.
Motivering
XML Events-standarden är definierad för att ge XML-baserade språk förmågan att enhetligt integrera händelseavlyssnare och associerade händelsehanterare med Document Object Model (DOM) nivå 2 händelsegränssnitt. Resultatet är att tillhandahålla ett deklarativt, interoperabelt sätt att associera beteenden med XML-baserade dokument som XHTML .
Fördelar med XML-händelser
XML Events använder en separation av problem designmönster och är teknikneutralt med avseende på hanterare . Det ger författare frihet att organisera sin kod och tillåter separation av dokumentinnehåll från skript .
Äldre HTML- och tidiga SVG- versioner binder händelser till presentationselement genom att koda händelsenamnet i ett attributnamn , så att värdet på attributet är åtgärden för den händelsen vid det elementet. Till exempel (med JavaScripts onclick - attribut):
Stanna <a href="http://www.example.org" onclick="window.alert('Hello!'); return false;">här</a> !
Denna design har tre nackdelar:
- den kopplar händelserna till språket så att nya händelsetyper kräver ändringar av språket
- det tvingar författare att blanda innehållet i dokumentet med specifikationerna för skript och händelsehantering, snarare än att låta dem separera dem.
- det begränsar författare till ett enda skriptspråk per dokument.
Förhållande till andra standarder
Till skillnad från DOM Events , som vanligtvis associeras med HTML-dokument, är XML-händelser utformade för att vara oberoende av specifika enheter. XML-händelser används flitigt i XForms och i version 1.2 av SVG -specifikationen, från och med juli 2006, vilket fortfarande är ett fungerande utkast.
Exempel på XML-händelser som använder en lyssnare i XForms
Följande är ett exempel på hur XML-händelser används i XForms-specifikationen:
<html xmlns= "http://www.w3.org/1999/xhtml" xmlns:ev= "http://www.w3.org/2001/xml-events" xmlns:xf= "http://www. .w3.org/2002/xforms" > <head> <ev:listener event= "DOMActivate" observer= "myButton" handler= "#doit" /> </head> <xf:trigger xml:id= "myButton" ><xf:label> Gör det! </xf:label></xf:trigger> <script xml:id= "doit" type= "application/ecmascript" > alert("test"); </script> </html>
I det här exemplet, när DOMActivate
-händelsen inträffar på dataelementet med id-attributet myButton ,
exekveras hanteraren doit (till exempel ett JavaScript-element).
Se även
externa länkar
- W3C XML Event Specification var en W3C-rekommendation den 14 oktober 2003
- Handledning för W3C XML-händelser för HTML-författare