IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

JavaScript Discussion :

[DOM] Internet Explorer me sort une 'Erreur : Objet Requis' :/


Sujet :

JavaScript

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Novembre 2008
    Messages
    8
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2008
    Messages : 8
    Par défaut [DOM] Internet Explorer me sort une 'Erreur : Objet Requis' :/
    Bonjour,

    Je suis en train de travailler sur un projet en partie réalisée avec AJAX et XML, et je me retrouve bloqué sur un problème d'objet requis :/

    Mon code marche parfaitement sous FF (normal, comme d'hab) mais IE fait des siennes (encore une fois, comme d'hab).

    Je vous mets en dessous ma fonction qui pose souci :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    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
    /** fonction pour l'affichage de la carte région agrandie en plein ecran **/
    function afficherCarteFullscreen(pays, region, saison)
    {
    	opacityOn();
     
    	getId('cartes_fullscreen').style.display = 'block';
    	getId('cartes_fullscreen').innerHTML = '<img id="loading" src="site/media/descriptifs/loading_bar.gif" alt="" title="" />';
     
    	var data = 'pays=' + pays + '&region=' + region + '&saison=' + saison;
     
    	xhr = createRequestObject();
     
    	xhr.onreadystatechange = function ()
    	{
    		if(xhr.readyState == 4)
    		{
    			if (xhr.status == 200)
    			{
    				var docXML = xhr.responseXML; //Objet permettant de gérer le xml généré dans le script PHP
     
    				stations = docXML.getElementsByTagName('station');
    				var html = docXML.getElementsByTagName('template');
    				getId('cartes_fullscreen').innerHTML = html[0].firstChild.nodeValue;
     
    				getId('img_grande_carte').src = 'site/media/cartes/' + pays + '/' + region + '/generale.png';
     
    				// on assigne des margin aux images/points représentant les stations; on les positionne
    				for(var i = 0; i < stations.length; i++)
    				{
    					getId('station_' + stations[i].getAttribute('code')).style.margin = stations[i].getElementsByTagName('coordonnee_y')[0].firstChild.nodeValue + 'px 0px 0px ' + stations[i].getElementsByTagName('coordonnee_x')[0].firstChild.nodeValue + 'px';
    				}
    			}
    			else alert(xhr.status + " " + xhr.statusText);
    		}
    	};
     
    	xhr.open("POST", "site/includes/cartes/ajax_cartes_fullscreen.php", true);
    	xhr.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
    	xhr.send(data);
    }

    Au moment ou j'exécute la fonction, j'ai une erreur, et mon code semble bloquer au moment ou il passe sur cette ligne :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    getId('cartes_fullscreen').innerHTML = html[0].firstChild.nodeValue;
    Si quelqu'un sait de quoi il en retourne...

    En espérant avoir été clair, et dans l'attente de réponses ^^, merci d'avance.

    Baptiste

  2. #2
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 658
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 75
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 658
    Billets dans le blog
    1
    Par défaut
    Quel langage !!


    Bref se mefier des firstChild avec IE ...
    faire une recherche avec "NodeCleaner"
    elle est declarée ou la focntion getId ?
    Ma page Developpez - Mon Blog Developpez
    Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
    Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
    Votre post est résolu ? Alors n'oubliez pas le Tag

    Venez sur le Chat de Développez !

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Novembre 2008
    Messages
    8
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2008
    Messages : 8
    Par défaut
    Oui désolé j'ai tendance à être quelques peu irrité par ce cher IE ^^.

    La fonction getId est tout ce qu'il y a de plus simple, c'est juste une abréviation :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    function getId(id)
    {
    	return document.getElementById(id);
    }
    Pour ce qui est de NodeCleaner, c'est quoi exactement ? un soft pour nettoyer mon XML ?

    (Pi merci pour la réponse rapide ^^)

    Baptiste

  4. #4
    Rédacteur

    Avatar de Bovino
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juin 2008
    Messages
    23 647
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2008
    Messages : 23 647
    Billets dans le blog
    20
    Par défaut
    Pour ce qui est de NodeCleaner, c'est quoi exactement ? un soft pour nettoyer mon XML ?
    Non, c'est une fonction très utile pour supprimer les noeuds vides qui posent des problèmes liés à la différence d'intrerprétation du DOM entre les navigateurs.
    Voir ici.
    Pas de question technique par MP !
    Tout le monde peut participer à developpez.com, vous avez une idée, contactez-moi !
    Mes formations video2brain : La formation complète sur JavaScriptJavaScript et le DOM par la pratiquePHP 5 et MySQL : les fondamentaux
    Mon livre sur jQuery
    Module Firefox / Chrome d'intégration de JSFiddle et CodePen sur le forum

Discussions similaires

  1. Valgrind sort une erreur
    Par Narom dans le forum Débuter
    Réponses: 4
    Dernier message: 03/08/2011, 10h41
  2. [CMake] NMake sort une erreur de liaison
    Par khazna dans le forum Systèmes de compilation
    Réponses: 1
    Dernier message: 02/05/2010, 14h47
  3. Réponses: 2
    Dernier message: 19/07/2006, 15h46
  4. [DOM] DHTML avec le DOM + internet explorer 6
    Par jeromek dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 10/02/2006, 09h02
  5. Internet Explorer m'affiche une page blanche
    Par poof65 dans le forum IE
    Réponses: 10
    Dernier message: 15/08/2005, 22h50

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo