JavaScript XML Chrome et Safari vs Mozilla, IE, Opera
Bonjour,
J'ai crée un site pour un ami qui travaille comme agent immobilier. Son site contient une série de propositions de ventes immobilières mais pas une grande quantité et la masse des propositions ne risque pas d'augmenter.
Donc au lieu de créer une base de données (genre My SQL) j'ai utilisé des fichiers XML dont le contenu est chargé par un script JS dans les différents élements affichés par le HTML (exemple : document.getElementById("ref100").innerHTML=xmlVaudBI.getElementsByTagName("ref100")[0].childNodes[0].nodeValue;)
A l'affichage les "div" HTML sont remplies par IE,Firefox et Opera, mais Safari et Chrome laissent les "div" vides.
Avez-vous une réponse? Pourtant j'ai autorisé JavaScript dans Chrome et Safari
En effet il y a une erreur
Citation:
Envoyé par
sekaijin
avec si peu d'infos...
fait un clic droit sur ta page dans WebKit (chrome ou safari) choisis "inspaecter l'élément" et clique sur le buton "console" le plus à droite en haut
recharge ta page et tu vera les erreurs
dans l'onglet javascript tu peux sélectionner ton js et mettre un point d'arrêt pour voir ce qu'il se passe
A+JYT
Merci pour votre réponse,
En effet suite à vos instructions j'ai trouvé l’élément en erreur, mais malgré ça je ne comprends pas:.
La console de Chrome donne : Uncaught TypeError: Object #<Document> has no method 'load'
L'erreur se trouve à la ligne 17 dans le code javaScript suivant :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43
| var xmlGeneveCRB;
function loadXMLGeneveCRB()
{
//load xml file
// code for IE
if (window.ActiveXObject)
{
xmlGeneveCRB=new ActiveXObject("Microsoft.XMLDOM");
xmlGeneveCRB.async=false;
xmlGeneveCRB.load("xml/genevecrb.xml");
getoffregenevecrb();
}
// code for Mozilla, Firefox, Opera, etc.
else if (document.implementation && document.implementation.createDocument)
{
xmlGeneveCRB=document.implementation.createDocument("","",null);
xmlGeneveCRB.load("xml/genevecrb.xml");
xmlGeneveCRB.onload=getoffregenevecrb;
}
else
{
alert('Votre navigateur ne peut pas afficher ce script!');
}
}
function getoffregenevecrb()
{
document.getElementById("ref100").innerHTML=xmlGeneveCRB.getElementsByTagName("ref100")[0].childNodes[0].nodeValue;
document.getElementById("ref101").innerHTML=xmlGeneveCRB.getElementsByTagName("ref101")[0].childNodes[0].nodeValue;
document.getElementById("ref102").innerHTML=xmlGeneveCRB.getElementsByTagName("ref102")[0].childNodes[0].nodeValue;
document.getElementById("ref103").innerHTML=xmlGeneveCRB.getElementsByTagName("ref103")[0].childNodes[0].nodeValue;
document.getElementById("ref104").innerHTML=xmlGeneveCRB.getElementsByTagName("ref104")[0].childNodes[0].nodeValue;
document.getElementById("ref105").innerHTML=xmlGeneveCRB.getElementsByTagName("ref105")[0].childNodes[0].nodeValue;
document.getElementById("ref106").innerHTML=xmlGeneveCRB.getElementsByTagName("ref106")[0].childNodes[0].nodeValue;
document.getElementById("ref107").innerHTML=xmlGeneveCRB.getElementsByTagName("ref107")[0].childNodes[0].nodeValue;
document.getElementById("ref108").innerHTML=xmlGeneveCRB.getElementsByTagName("ref108")[0].childNodes[0].nodeValue;
document.getElementById("ref109").innerHTML=xmlGeneveCRB.getElementsByTagName("ref109")[0].childNodes[0].nodeValue;
document.getElementById("ref110").innerHTML=xmlGeneveCRB.getElementsByTagName("ref110")[0].childNodes[0].nodeValue;
document.getElementById("ref111").innerHTML=xmlGeneveCRB.getElementsByTagName("ref111")[0].childNodes[0].nodeValue;
document.getElementById("ref112").innerHTML=xmlGeneveCRB.getElementsByTagName("ref112")[0].childNodes[0].nodeValue;
document.getElementById("ref113").innerHTML=xmlGeneveCRB.getElementsByTagName("ref113")[0].childNodes[0].nodeValue;
document.getElementById("ref114").innerHTML=xmlGeneveCRB.getElementsByTagName("ref114")[0].childNodes[0].nodeValue;
} |
Dans le HTML cette fonction JS est declarée dans body :
Code:
<body onload="loadXMLGeneveCRB();">
Donc je ne vois pas le problème.
Auriez-vous une suggestion?
Merci d'avance,
Mihai
JavaScript XML Chrome et Safari vs Mozilla, IE, Opera