Visualizzazione dei risultati da 1 a 5 su 5
  1. #1
    Utente di HTML.it L'avatar di salvod
    Registrato dal
    Feb 2002
    Messaggi
    314

    errore con xml su firefox

    salve a tutti.. ho il seguente script che carica dei dati da un file xml
    codice:
    var XMLFile="ticker.xml"
    var xml = null;
    
    var pausecontent = new Array();
    
    if (document.implementation && document.implementation.createDocument) {
    	xml = document.implementation.createDocument("","",null)
    	xml.onload=init_data;
    	xml.load(XMLFile);
    } else if (window.ActiveXObject) {
    	xml = new ActiveXObject("Microsoft.XMLDOM")
    	xml.onreadystatechange = IEGo;
    	xml.load(XMLFile);
    }
    	
    function IEGo() {
    	if (xml.readyState == 4)
    		init_data();
    }	
    	
    	
    function init_data() {
    
    	var root = xml.getElementsByTagName("xmlticker")[0];
    
    	for(i=0;i < root.childNodes.length;i++) {
    
    	items = root.childNodes[i]
    
    	current_msg = "";
    	current_msg += "" + items.getAttribute("materia") + "
    ";
    
    	if (items.getAttribute("url")!=null) {
    		current_msg += '<a href="' + items.getAttribute("url") + '"';
    	if (items.getAttribute("target")!=null)
    		current_msg += ' target="' + items.getAttribute("target")+'"';
    	
    	current_msg += '>';
    	}
    
    	current_msg += items.firstChild.nodeValue;
    
    	if (items.getAttribute("url")!=null)
    		current_msg += '</a>';
    
    	pausecontent[i] = current_msg;
    
    	}
    }
    il file xml è il seguente..
    codice:
    <?xml version="1.0"?>
    <xmlticker>
    <message materia="materia1">descrizione1</message>
    <message materia="materia1" url="http://www.miosito.com">descrizione2</message>
    <message materia="materia2" url="http://www.miosito.com" target="_blank">messaggio2</message>
    ......
    ........
    </xmlticker>
    con internet explorer 7 funziona perfettamente invece con fire fox mi da il seguente errore "items.getAttribute is not a function"

    ------------------------------
    x br1: scusami per il titolo dell'altro thread, sarà il sonno ma come titolo avevo pensato "problema con xml" non era mia intenzione ingannare gli utenti.. ho stentato anche io a riconoscere il mio post dal titolo visto che mi ricordavo di aver messo "problema con xml"

    p.s: ho provato a scriverti in pvt ma hai la casella piena.. se puoi cancella l'altro post e poi modifico l'ultimo pezzo di questo..
    scusami ancora, grazie
    cercasi siti con 1000 accessi al giorno di media per testing servizio di statistiche professionale... per info pvt me

  2. #2
    Utente di HTML.it L'avatar di Xinod
    Registrato dal
    Sep 2000
    Messaggi
    13,649
    chiaramente, mozilla & co. considerano nodi anche i rimandi a capo (e non solo) quando attraversano il DOM di un documento (= il fatto che si parli di un xml non genera particolari differenze)
    nel tuo codice probabilmente
    var root = xml.getElementsByTagName("xmlticker")[0];
    alert(root.length)
    restituira' un valore ben diverso su firefox rispetto a quello restituito da IE
    e chiedere un getAttribute di un nodo white-space genera errore

    nel caso specifico ci sono almeno 2 modi validi di risolvere:
    1- valutare il risultato di un xml.getElementsByTagName('message'), piuttosto che tutti i nodi figli della root
    2- saltare nel ciclo i nodi non utili, come nell' esempio che trovi qui
    http://www.w3schools.com/dom/dom_mozilla_vs_ie.asp
    che illustra anche per bene la situazione
    ciao

  3. #3
    Utente di HTML.it L'avatar di salvod
    Registrato dal
    Feb 2002
    Messaggi
    314
    sei stato chiarissimo.. grazie 1000
    cercasi siti con 1000 accessi al giorno di media per testing servizio di statistiche professionale... per info pvt me

  4. #4
    Utente di HTML.it L'avatar di Xinod
    Registrato dal
    Sep 2000
    Messaggi
    13,649
    di nulla
    Originariamente inviato da Xinod
    nel tuo codice probabilmente
    var root = xml.getElementsByTagName("xmlticker")[0];
    alert(root.length)
    restituira' un valore ben diverso su firefox rispetto a quello restituito da IE
    ... qui ovviamente intendevo root.childNodes.length;
    ciao

  5. #5
    Utente di HTML.it L'avatar di salvod
    Registrato dal
    Feb 2002
    Messaggi
    314
    si infatti, avevo notato l'errore.. cmq ora funge ;-)
    cercasi siti con 1000 accessi al giorno di media per testing servizio di statistiche professionale... per info pvt me

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.