/* documentazione breve per uso di ajax -- DOM utilizzo di oggetti in javascript accesso agli oggetti dom, usare funzione function MM_findObj(n, d) { //v4.0 var p,i,x; if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) { d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);} if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i').join(">"); } parsare un xml: function leggiContenuto(item, nomeNodo) { return item.getElementsByTagName(nomeNodo).item(0).firstChild.nodeValue; } function parsaXml(xml) { // variabili di funzione var // Otteniamo la lista degli item dall'RSS 2.0 di edit items = xml.getElementsByTagName("item"), // la variabile di ritorno, in questo esempio, è testuale risultato = "", // questa variabile conterrà tutti gli item raggruppati // per categoria nodoItem = new Object(), // questa variabile verrà utilizzata come stringa temporanea // durante le operazioni di parsing categoria; // ciclo di lettura degli elementi for(var a = 0, b = items.length; a < b; a++) { // peculiarità dell'RSS 2.0 di edit è la presenza del tag // author per ogni item. Non presente invece negli item // di feedburner ed in questo caso non viene considerato if(items[a].getElementsByTagName("author").length === 1) { // assegnamo la categoria alla stringa temporanea categoria = leggiContenuto(items[a], "category"); // se l'oggetto nodoItem non ha ancora alcun elemento // per la categoria appena letta if(!nodoItem[categoria]) // si istanzia l'oggetto.categoria come nuovo array nodoItem[categoria] = new Array(); // aggiunta di un item alla categoria assegnata // [length al posto di push serve per evitare errori con vecchi browser] nodoItem[categoria][nodoItem[categoria].length] = ({ titolo: leggiContenuto(items[a], "title"), link: leggiContenuto(items[a], "guid"), data: leggiContenuto(items[a], "pubDate"), autore: leggiContenuto(items[a], "author") }); }; } */