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

jQuery Discussion :

ie7 et objet jquery


Sujet :

jQuery

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Inscrit en
    Janvier 2008
    Messages
    165
    Détails du profil
    Informations forums :
    Inscription : Janvier 2008
    Messages : 165
    Par défaut ie7 et objet jquery
    slt
    je rame , sur ie7 et ie8(c'est peux dire), alors que le code fonctionne sur la version 9 et les autres brothers .

    voici le code
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    //list
            slideList = this.find('.slide_Menu_list');
     
            //clip
            clip = slideList.parent();
    ie7 et 8 me retourne l'erreur suivante sur la 2eme ligne de code:
    SCRIPT438: Cet objet ne gère pas cette propriété ou cette méthode

    ce code se trouve dans une fonction jquery qui gere un menu

    j'ai beau chercher je ne trouve pas beaucoup de ressources sur les soucis jquery et ie7 8

    voilou
    merci

  2. #2
    Rédacteur

    Avatar de danielhagnoul
    Homme Profil pro
    Étudiant perpétuel
    Inscrit en
    Février 2009
    Messages
    6 389
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant perpétuel
    Secteur : Enseignement

    Informations forums :
    Inscription : Février 2009
    Messages : 6 389
    Billets dans le blog
    125
    Par défaut
    Bonsoir

    Sans le contexte ce n'est pas évident, mais si votre code est du jQuery normal, il faut écrire :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    //list
    var slideList = $(this).find('.slide_Menu_list');
     
    //clip
    clip = slideList.parent();

    Blog

    Sans l'analyse et la conception, la programmation est l'art d'ajouter des bogues à un fichier texte vide.
    (Louis Srygley : Without requirements or design, programming is the art of adding bugs to an empty text file.)

  3. #3
    Membre confirmé
    Inscrit en
    Janvier 2008
    Messages
    165
    Détails du profil
    Informations forums :
    Inscription : Janvier 2008
    Messages : 165
    Par défaut ie7 et jquery
    slt et merci
    je vais mettre le contexte ;-)

    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
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
     
    (function(){
        $.fn.jmenuCarousel=function(aFunction){
     
            //list
            slideList = $(this).find('.slide_Menu_list');
     
            //clip
            clip = slideList.parent();
     
            //width of list
            listWidth = 0;
     
            //catch scroll item
     
            this.find('li').each(function(){
     
                node=$(this);
     
                listWidth+=node.width();
     
                if(typeof aFunction == 'function')
                {
                    node.find('a').each(
                        function(){
                            //reset a click comportement
                            $(this).unbind('click');
                            // add comportement
                            $(this).click(aFunction);
                        })
     
                }
     
            })
     
            //set width of list
            slideList.width(listWidth+10);
     
            // init first visible  element
            firstVisibleItem = slideList.find('.menu_slide_item_'+0);
     
     
     
            //handle buttons
            btprev=this.find('.btPrev');
            btNext=this.find('.btNext');
            //add click
            btprev.click(function(){
                btDisable(),backward()
            });
            btNext.click(function(){
                btDisable(),forward()
            });
    je ne pense pas que la suite de la fonction soit utilise vu que ie7 et ie8 s'arrete a la ligne
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    clip = slideList.parent();
    meme en faisant ta petite manip.j'ai toujours

    SCRIPT438: Cet objet ne gère pas cette propriété ou cette méthode

    pourtant parent() est accepté par ie7 et ie8 dans la doc jquery

    voilou je rame toujours mais je continu mes recherches.
    ca doit être gros comme une maison, mais bon ...... j'y vois rien ;-)
    A+

  4. #4
    Membre confirmé
    Inscrit en
    Janvier 2008
    Messages
    165
    Détails du profil
    Informations forums :
    Inscription : Janvier 2008
    Messages : 165
    Par défaut ie7 ie8 et jquery
    re
    j'ai résolu mon soucis, en faite ie7 et ie8 n'aime apparemment pas qu'on oublis "var" devant le nom de nos variables et les objets jquery doivent obligatoirement être précédés de $

    merci A+

  5. #5
    Rédacteur

    Avatar de danielhagnoul
    Homme Profil pro
    Étudiant perpétuel
    Inscrit en
    Février 2009
    Messages
    6 389
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant perpétuel
    Secteur : Enseignement

    Informations forums :
    Inscription : Février 2009
    Messages : 6 389
    Billets dans le blog
    125
    Par défaut
    Bonjour

    J'ai écrit : "Sans le contexte ce n'est pas évident, mais si votre code est du jQuery normal, il faut écrire :"

    Et justement votre code est spécial, il s'agit d'un plugin. Et dans un plugin, this contient un Array d'objets que le plugin doit traité un par un. Et dans un plugin on doit toujours retourner ce this pour maintenir le chaînage des instructions jQuery.

    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
    (function($){
    	$.fn.jmenuCarousel = function(aFunction){
    		return this.each(function(i, item){
    			// list
    			var slideList = $(item).find('.slide_Menu_list');
     
    			// clip
    			var clip = slideList.parent();
     
    			// width of list
    			var listWidth = 0;
     
    			// catch scroll item
    			$(item).find('li').each(function(j, jtem){
    				listWidth += $(jtem).width();
     
    				if(typeof aFunction == 'function'){
    					$(jtem).find('a').each(function(k, ktem){
    						//reset a click comportement
    						$(ktem).unbind('click');
     
    						// add comportement
    						$(ktem).click(aFunction);
    					});
    				}
    			});
    		});
    	};
    })(jQuery);

    Blog

    Sans l'analyse et la conception, la programmation est l'art d'ajouter des bogues à un fichier texte vide.
    (Louis Srygley : Without requirements or design, programming is the art of adding bugs to an empty text file.)

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. IE7 Erreur : Objet attendu
    Par hm7845 dans le forum IGN API Géoportail
    Réponses: 4
    Dernier message: 11/12/2011, 14h45
  2. Question sur l'attribut hash d'un objet jQuery
    Par Steph18 dans le forum jQuery
    Réponses: 2
    Dernier message: 07/11/2009, 13h18
  3. Customiser Objets jQuery
    Par Thewil dans le forum jQuery
    Réponses: 2
    Dernier message: 27/06/2009, 19h43
  4. [DOM] Comment détruire un objet jQuery ?
    Par tatayecorp dans le forum jQuery
    Réponses: 1
    Dernier message: 20/09/2007, 10h57

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