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

Réduire
X
 
  • Filtrer
  • Heure
  • Afficher
Tout effacer
nouveaux messages

  • [Problème] Cet objet ne gère pas cette propriété ou cette méthode

    Bonjour,

    J'ai un soucis avec un script sous IE8:
    "Cet objet ne gère pas cette propriété ou cette méthode
    menu.gkdropline.js
    Ligne: 11
    Caractère 5"

    Le script en question:

    jQuery(document).ready(function() {
    var main = jQuery('#gkDropMain');
    var sub = jQuery('#gkDropSub');

    if(main) {
    var submenus = jQuery('#gkSubmenu').find('#gkDropSub > ul');
    var mainmenus = jQuery('#gkDropMain').find('li');
    var currentsub = null;

    mainmenus.each(function(i, el) {
    if(el.hasClass('active')){
    currentsub = submenus[i];
    jQuery(currentsub).css('left', 'auto');
    jQuery(currentsub).attr('class', 'active');
    }
    });

    main.find('li').each(function(i, el) {
    jQuery(el).mouseenter(function() {
    if(currentsub) {
    jQuery(currentsub).css('left', '-999em');
    jQuery(submenus).attr('class', '');
    }

    currentsub = submenus[i];
    jQuery(currentsub).css('left', 'auto');
    jQuery(currentsub).attr('class', 'active');
    });
    });
    }
    });


    Je bloque dessus depuis plusieurs jours, sans succès.
    Si quelqu'un pouvait avoir ne serait ce qu'une piste, ce serait une vrai bonheur.

    Merci d'avance pour les réponses.

  • #2
    Re : Cet objet ne gère pas cette propriété ou cette méthode

    Salut,
    c'est un peu curieux de se préoccuper encore de IE8, alors que le support de l'OS qui lui était associé, XP, vient d'être arrêté par Microsoft.

    Je n'ai rien contre les causes perdues mais j'ai peur que si tu demandes de l'aide sur Gavick.com, l'auteur du template payant dans lequel figure le module menu concerné par ce souci JS, il n'est pas sur du tout que tu recoives une réponse.
    Un message d’erreur sur votre site Joomla ... ayez le reflexe de consulter lla base de connaissance : https://kb.joomla.fr

    Ce forum, vous l'aimez ? il vous a sauvé la vie ? Vous y apprenez chaque jour ? Alors adhérez à l'AFUJ https://www.joomla.fr/association/adherer

    Commentaire


    • #3
      Re : Cet objet ne gère pas cette propriété ou cette méthode

      C'est pour les besoins d'un client, je n'ai pas le choix.

      Commentaire


      • #4
        Re : Cet objet ne gère pas cette propriété ou cette méthode

        Bonjour,

        en l'occurrence, vue le contenu du script, c'est plutôt du côté de jQuery qu'il faut se tourner (seulement dans le cas de IE8 sans doute).

        Si je compte les lignes (pas très précis, il faudrait activer le debugger pour voir ce qui se passe précisément), il semble que el.hasClass() ne fonctionne pas, sans doute parce que la variable el vaut null. Celle-ci étant passée en paramètre de l'appel mainmenus.each(), c'est sans doute le contenu de mainmenus qui est en cause, mainmenus lui même alimenté par jQuery('#gkDropMain').find('li').

        En clair avec IE8, pas de tableau (each() permet de parcourir les type array) retourné par la fonction find('li') dans l'élément id='gkDropMain'.

        De mémoire avec les anciennes versions de IE (en tout cas sûr et certain pour IE6 et IE7), quand une fonction jQuery retournait une liste d'élément ne contenant qu'un et un seul élément, le retour était un élément object mais pas un élément array

        Combien de sous-menu sur ton menu ?
        Il y a 10 sortes de gens. Ceux qui savent compter en binaire et ceux qui ne savent pas ...

        Commentaire


        • #5
          Re : Cet objet ne gère pas cette propriété ou cette méthode

          FYI :
          Ahh, je savais bien que j'avais vu cette annonce qq part :

          It’s time to say goodbye to IE8! - Information - Joomla Templates and WordPress Themes - Gavick.com Blog


          ... qui a initié ma réponse ...

          Maintenant, si tu adaptes le script à IE8, prends les précautions d'usage, genre dans la head:
          <!--[if lt IE 9]>
          <script src="chemin/vers/ton/script/pour_ie8.js"></script>
          <![endif]-->

          **********
          Quelques infos supplémentaires

          Cette discussion aborde la question d'IE8 :
          joomla 3.3.0 beta error - Google Groups


          Il y est mentionné que la Production Leadership Team (PLT) va discuter de la pérennité ou non du support d'IE8 pour l'admin.
          Un message d’erreur sur votre site Joomla ... ayez le reflexe de consulter lla base de connaissance : https://kb.joomla.fr

          Ce forum, vous l'aimez ? il vous a sauvé la vie ? Vous y apprenez chaque jour ? Alors adhérez à l'AFUJ https://www.joomla.fr/association/adherer

          Commentaire


          • #6
            Re : Cet objet ne gère pas cette propriété ou cette méthode

            Merci pour les retours d'informations, mon développeur est en vacances mais je vais essayer de retravailler tout cela.

            Commentaire


            • #7
              Re : Cet objet ne gère pas cette propriété ou cette méthode

              Cela dépends de la catégorie entre 0 et 2.

              Commentaire

              Annonce

              Réduire
              Aucune annonce pour le moment.

              Partenaire de l'association

              Réduire

              Hébergeur Web PlanetHoster
              Travaille ...
              X