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 :

[POO] Erreur javascript sous Explorer


Sujet :

JavaScript

  1. #1
    Nouveau membre du Club
    Inscrit en
    Août 2007
    Messages
    41
    Détails du profil
    Informations forums :
    Inscription : Août 2007
    Messages : 41
    Points : 26
    Points
    26
    Par défaut [POO] Erreur javascript sous Explorer
    Bonjour tout le monde,
    A l'ouverture de la homepage de mon site, explorer m'indique qu'il y a une erreur en bas à gauche. J'ai essayé avec explorer 8, même problème. Mais lui m'indique précisément la source de cette erreur. Ca vient d'un fichier javascript de mon site qui sert à grandir mes images via un effet zoom. Voici le passage responsable de l'erreur :

    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
    preloadImages : function (number) {
    	if (number && typeof number != 'object') hs.numberOfImagesToPreload = number;
    	var re, j = 0;
     
    	var aTags = document.getElementsByTagName('A');
    	for (i = 0; i < aTags.length; i++) {
    		a = aTags[i];
    		re = hs.isHsAnchor(a);
    		if (re && re[0] == 'hs.expand') {
    			if (j < hs.numberOfImagesToPreload) {
    				hs.preloadTheseImages[j] = hs.getSrc(a); 
    				j++;
    			}
    		}
    	}
    Quand j'enlève ce passage, l'erreur n'est plus indiqué.
    Pouvez-vous me dire ce qui cloche ici ?
    D'avance merci pour votre aide.

  2. #2
    Expert éminent sénior

    Homme Profil pro
    Inscrit en
    Janvier 2007
    Messages
    13 474
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2007
    Messages : 13 474
    Points : 36 571
    Points
    36 571
    Par défaut
    Bonjour,
    il aurait été intéressant d'avoir les codes/libéllés de cette erreur

    La seule chose que je vois
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    var aTags = document.getElementsByTagName('a');
    Sinon, "number" n'est pas un bon choix comme identificateur (car terme déjà utilisé par le langage).

    A+

  3. #3
    Nouveau membre du Club
    Inscrit en
    Août 2007
    Messages
    41
    Détails du profil
    Informations forums :
    Inscription : Août 2007
    Messages : 41
    Points : 26
    Points
    26
    Par défaut
    Bonjour E.bzz et merci pour ta réponse.
    J'ai remplacé la A mais cela l'erreur est toujours présente.
    Voici le message exact que j'obtiens sous IE8 :

    Erreurs de script de page Web

    Agent utilisateur : Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.0; Trident/4.0; SLCC1; .NET CLR 2.0.50727; Media Center PC 5.0; .NET CLR 3.0.04506; InfoPath.1)
    Horodateur : Mon, 17 Nov 2008 15:29:43 UTC


    Message*: Cet objet ne gère pas cette propriété ou cette méthode
    Ligne*: 498
    Caractère*: 7
    Code*: 0
    URI*: ../protos.lightbox.js

  4. #4
    Rédacteur
    Avatar de bigboomshakala
    Homme Profil pro
    Consultant Web .NET
    Inscrit en
    Avril 2004
    Messages
    2 077
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Consultant Web .NET
    Secteur : Finance

    Informations forums :
    Inscription : Avril 2004
    Messages : 2 077
    Points : 2 757
    Points
    2 757
    Par défaut
    comment savoir où se trouve le problème dans ton code ? tu utilises un objet hs qui a des méthodes dont on ne sait rien.
    ce que dit l'erreur c'est que sur l'un des objets que tu manipules, il y a une une fonction ou un attribut auquel tu fais appel et qui n'existe pas pour cet objet. possible que l'objet que tu crois manipulé est null ou en tout cas différent de ce que tu espères

  5. #5
    Nouveau membre du Club
    Inscrit en
    Août 2007
    Messages
    41
    Détails du profil
    Informations forums :
    Inscription : Août 2007
    Messages : 41
    Points : 26
    Points
    26
    Par défaut
    Merci Bigboom mais... traduction ?
    Faut-il que je mette tout le code ?

  6. #6
    Expert confirmé
    Avatar de RomainVALERI
    Homme Profil pro
    POOête
    Inscrit en
    Avril 2008
    Messages
    2 652
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : POOête

    Informations forums :
    Inscription : Avril 2008
    Messages : 2 652
    Points : 4 164
    Points
    4 164
    Par défaut
    Citation Envoyé par s-c-a-r-a Voir le message
    Merci Bigboom mais... traduction ?
    Faut-il que je mette tout le code ?
    Peut-être pas tout (), mais au moins la fonction du fichier lightbox.js qui comprend la ligne 498 ^^

  7. #7
    Nouveau membre du Club
    Inscrit en
    Août 2007
    Messages
    41
    Détails du profil
    Informations forums :
    Inscription : Août 2007
    Messages : 41
    Points : 26
    Points
    26
    Par défaut
    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
    preloadImages : function (number) {
    	if (number && typeof number != 'object') hs.numberOfImagesToPreload = number;
    	var re, j = 0;
     
    	var aTags = document.getElementsByTagName('a');
    	for (i = 0; i < aTags.length; i++) {
    		a = aTags[i];
    		re = hs.isHsAnchor(a);
    		if (re && re[0] == 'hs.expand') {
    			if (j < hs.numberOfImagesToPreload) {
    				hs.preloadTheseImages[j] = hs.getSrc(a); 
    				j++;
    			}
    		}
    	}
     
    	// preload outlines
    	new HsOutline(hs.outlineType, function () { hs.preloadFullImage(0)} );
     
    	// preload cursor
    	var cur = hs.createElement('img', { src: hs.graphicsDir + hs.restoreCursor });
    },
    Merci Romain, voici la fonction en entier.

  8. #8
    Expert confirmé
    Avatar de RomainVALERI
    Homme Profil pro
    POOête
    Inscrit en
    Avril 2008
    Messages
    2 652
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : POOête

    Informations forums :
    Inscription : Avril 2008
    Messages : 2 652
    Points : 4 164
    Points
    4 164
    Par défaut
    Hum
    J'ai dû mal comprendre le problème de départ : je pensais que l'erreur soulevée dans cette portion de code était due à l'appel de l'une des fonctions qui y sont présentes...(par exemple isHsAnchor() ou getSrc() )

    Alors peux-tu nous montrer au minimum les signatures et le type de retour des fonctions en question ?

  9. #9
    Nouveau membre du Club
    Inscrit en
    Août 2007
    Messages
    41
    Détails du profil
    Informations forums :
    Inscription : Août 2007
    Messages : 41
    Points : 26
    Points
    26
    Par défaut
    Comme je ne savais pas quoi sélectionner, j'ai attaché le fichier incriminé en pièce-jointe.
    J'ai encore regardé hier soir mais rien à faire, l'erreur persiste.
    Merci de votre aide.
    Fichiers attachés Fichiers attachés

  10. #10
    Membre expérimenté Avatar de DoubleU
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    1 106
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 1 106
    Points : 1 388
    Points
    1 388
    Par défaut
    Fais plutot voir la façon dont tu utilises Highslide (dans ton code html), parce que l'erreur vient probablement de la, pas de highslide lui même.

  11. #11
    Nouveau membre du Club
    Inscrit en
    Août 2007
    Messages
    41
    Détails du profil
    Informations forums :
    Inscription : Août 2007
    Messages : 41
    Points : 26
    Points
    26
    Par défaut
    Tu veux dire pour mes photos ? Ok voici le code de mes vignettes sur lesquels on peut cliquer pour agrandir l'image :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    <a href='$gallerypath/img_pictures/".$row->imgfilename."' class='highslide' onclick='return hs.expand(this, {captionId: \"caption1\"})'>
    		<img title='".$row->imgtitle."' alt='".$row->imgtitle."' src='$gallerypath/img_thumbnails/".$row->imgthumbname."' style='$style'/></a><br/>
    C'est bien ça ? Merci pour votre aide.

  12. #12
    Membre expérimenté Avatar de DoubleU
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    1 106
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 1 106
    Points : 1 388
    Points
    1 388
    Par défaut
    Ouais pourtant ca a l'air d'être bon

  13. #13
    Nouveau membre du Club
    Inscrit en
    Août 2007
    Messages
    41
    Détails du profil
    Informations forums :
    Inscription : Août 2007
    Messages : 41
    Points : 26
    Points
    26
    Par défaut
    Citation Envoyé par DoubleU Voir le message
    Ouais pourtant ca a l'air d'être bon
    Oh non, vous n'avez donc pas de solution ? Je désespère.

  14. #14
    Expert éminent sénior
    Avatar de Auteur
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    7 650
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 7 650
    Points : 11 142
    Points
    11 142
    Par défaut
    bonjour,

    Tu as déclaré toutes tes variables ?
    Est-ce qu'une de tes variables a le même nom que l'attribut id d'un élément contenu dans ta page ? par exemple :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    monImage = document.getElementById("monImage").src;
    Utilises-tu un mot-clef javascript comme nom de variable ?

Discussions similaires

  1. [Google Maps] gmap Erreur Javascript sous internet explorer
    Par stomerfull dans le forum APIs Google
    Réponses: 2
    Dernier message: 19/09/2012, 19h14
  2. Erreur javascript sous IE rend le site inutilisable
    Par finalfx dans le forum jQuery
    Réponses: 2
    Dernier message: 10/03/2011, 22h51
  3. erreur javascript sur explorer
    Par salaberie dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 25/07/2010, 19h41
  4. Erreur JavaScript sous Chrome, Safari et IE8
    Par hsii04 dans le forum IGN API Géoportail
    Réponses: 16
    Dernier message: 04/07/2010, 12h26
  5. Erreur DOCTYPE et Javascript ? sous Internet Explorer
    Par jeanflo037 dans le forum Général JavaScript
    Réponses: 6
    Dernier message: 03/02/2009, 17h15

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