JavaScript v Mozille:E4X
Z MDC
« Předchozí Následující »
Do JavaScriptu 1.6 byl implementován standard E4X (CMA 357). E4X velmi usnadňuje práci s XML dokumenty – přístup k elementům, dotazy a další věci, které byly doposud řešitelné jen pomocí DOM (často velmi neohrabaně).
Podpora tohoto standardu velmi zjednodušuje a zefektivňuje vývoj komplexních webových aplikací, kde je manipulace se stromem dokumentu na denním pořádku. Ostatně, podívejte se sami na ukázku identického kódu, implementovaného nejdříve pomocí konvenčního DOM a poté s využitím E4X (příklad je převzat přímo ze specifikace E4X):
DOM:
function createTable () {
var mybody = document.getElementsByTagName("body").item(0);
mytable = document.createElement("TABLE");
mytablebody = document.createElement("TBODY");
for (var j = 0; j < 2; j++) {
mycurrent_row = document.createElement("TR");
for (var i = 0; i < 2; i++) {
mycurrent_cell = document.createElement("TD");
currenttext = document.createTextNode("cell is row " + j + ", column " + i);
mycurrent_cell.appendChild(currenttext);
mycurrent_row.appendChild(mycurrent_cell);
}
mytablebody.appendChild(mycurrent_row);
}
mytable.appendChild(mytablebody);
mybody.appendChild(mytable);
mytable.setAttribute("border", "2");
}
E4X:
function createTable() {
var doc = XML(document); // vytvoříme E4X objekt pro dokument
var mytablebody = doc..body.TABLE.TBODY;
for (var j = 0; j < 2; j++) {
mytablebody.TR[j] = ""; // přidáme prázdný řádek tabulky
for (var i = 0; i < 2; i++) // přidáme buňky s obsahem
mytablebody.TR[j].TD[i] = "cell is row " + j + ", column " + i;
}
doc..body.TABLE.@border = 2; // nastavíme tabulce hodnotu atributu border
}
[editovat] Použití E4X ve skriptech
Pokud chcete ve svém skriptu používat E4X, je vhodné takový skript označit speciálním MIME typem:
<script type="text/javascript; e4x=1">
Použijete-li standardní MIME typ text/javascript (tj. bez přípony e4x=1), E4X bude fungovat také, ale může dojít k syntaktickým chybám, pokud své skripty vkládáte mezi HTML komentáře (<-- ... -->) nebo do XML CDATA sekce (<[CDATA[...]]>).
[editovat] Další informace o E4X
O E4X se dozvíte více v článku v Akta X 0407 na Root.cz.
Standard E4X je součástí normy ECMA 357. Do JavaScriptu byl zahrnut ve verzi 1.6.
« Předchozí Následující »