Erreurs JS J3 vers J4

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

  • Erreurs JS J3 vers J4

    Bonjour,

    Je continue ma quête !

    Cette erreur JS me bloque :
    - Uncaught TypeError: window.addEvent is not a function

    Elle est déclenchée, si je ne me trompe, par l'une ou l'autre de ces lignes insérées dans le code :
    Code PHP:
            $script[] = 'window.addEvent(\'domready\', function() {';
            
    //$script[] = 'window.addEventListener(\'domready\',function(){';
    ​ 
    Je n'ai pas réussi à trouver par quoi modifier ce code.
    Il me semblait pourtant avoir déjà posé la question il y a longtemps, mais la recherche ne m'a pas permis de la retrouver.

    Que me conseillez-vous ?
    Merci !

    "Patience et longueur de temps font plus que force ni que rage..." (La Fontaine : Le Lion et le Rat) - "Il n'y a pas de problèmes; il n'y a que des solutions" (André Gide).
    MoovJla et LazyDbBackup sur www.joomxtensions.com - FaQ sur www.fontanil.info - Site pro : www.robertg-conseil.fr chez PHPNET, sites perso chez PlanetHoster + sites gérés chez PHPNET, PlanetHoster, Ionos et OVH

  • #2
    Bonjour Robert,
    Je ne sais pas si ma réponse est sensée, mais une recherche sur le Net me dit que window.addEvent est un script mootools et est obsolète dans Joomla 3. Si cela est confirmé, l'erreur vient peut-être de là ?

    Commentaire


    • #3
      Bonjour,

      Tu as probablement raison, reste à savoir par quoi remplacer cet appel.
      "Patience et longueur de temps font plus que force ni que rage..." (La Fontaine : Le Lion et le Rat) - "Il n'y a pas de problèmes; il n'y a que des solutions" (André Gide).
      MoovJla et LazyDbBackup sur www.joomxtensions.com - FaQ sur www.fontanil.info - Site pro : www.robertg-conseil.fr chez PHPNET, sites perso chez PlanetHoster + sites gérés chez PHPNET, PlanetHoster, Ionos et OVH

      Commentaire


      • #4
        en fait, une des 2 lignes est en commentaire. pourquoi ? Ca donne quoi si c'est elle qui est active ?

        Commentaire


        • #5
          Si je me souviens de mes tests hier, j'ai le même type de message avec celle en commentaire
          "Patience et longueur de temps font plus que force ni que rage..." (La Fontaine : Le Lion et le Rat) - "Il n'y a pas de problèmes; il n'y a que des solutions" (André Gide).
          MoovJla et LazyDbBackup sur www.joomxtensions.com - FaQ sur www.fontanil.info - Site pro : www.robertg-conseil.fr chez PHPNET, sites perso chez PlanetHoster + sites gérés chez PHPNET, PlanetHoster, Ionos et OVH

          Commentaire


          • #6
            même en mettant la première en commentaire ? bizarre que cela donne la même erreur

            Commentaire


            • #7
              En regardant l code, il me semble que j'avais précédemment remplacé window.addEventListener par window.addEvent, mais je ne me souviens pas pourquoi...

              Si je réactive addeventListener et désactive l'autre ligne, j'ai une autre erreur correspondt au code quelques lignes plus bas dans le même fichier
              Uncaught TypeError: $(...).getElement is not a function
              $script[] = " var jtElement = $('jt-accordion').getElement('div.jt-ajax'); ";
              qui dans le code source de la page apparaît comme
              function loadData() {
              var jtElement = $('jt-accordion').getElement('div.jt-ajax');​
              Cela dit, la page s'affiche avec ses données, mais j'ai une liste de lettres, boutons cliquables en J3 et gérés par JS qui sont reconnus (curseur 'main' au survol) mais totalement inactifs en J4. Leur rôle est d'ouvrir la liste de noms dont l'initiale correspond à leur plage (calculés depuis la liste complète).
              Cliquez sur l'image pour l'afficher en taille normale  Nom : image.png  Affichages : 0  Taille : 2,2 Ko  ID : 2063187

              Cela pourrait-il vouloir dire que c'est au niveau de jt-accordion et/ou jt-ajax que le problème se crée ?​
              "Patience et longueur de temps font plus que force ni que rage..." (La Fontaine : Le Lion et le Rat) - "Il n'y a pas de problèmes; il n'y a que des solutions" (André Gide).
              MoovJla et LazyDbBackup sur www.joomxtensions.com - FaQ sur www.fontanil.info - Site pro : www.robertg-conseil.fr chez PHPNET, sites perso chez PlanetHoster + sites gérés chez PHPNET, PlanetHoster, Ionos et OVH

              Commentaire


              • #8
                Dans le code source de la page, jt-accordion est une div et jt-ajax une classe, donc mon hypothèse tombe à l'eau.
                La question revient donc sur ce "getElement".
                "Patience et longueur de temps font plus que force ni que rage..." (La Fontaine : Le Lion et le Rat) - "Il n'y a pas de problèmes; il n'y a que des solutions" (André Gide).
                MoovJla et LazyDbBackup sur www.joomxtensions.com - FaQ sur www.fontanil.info - Site pro : www.robertg-conseil.fr chez PHPNET, sites perso chez PlanetHoster + sites gérés chez PHPNET, PlanetHoster, Ionos et OVH

                Commentaire


                • #9
                  Bonjour,

                  Le remplacement par "getElementById" ne fait que changer ce même nom dans la console.

                  Le fichier PHP insère dans le code source de la page un script avec plusieurs fonctions.
                  Il débute par
                  Code:
                  <script type="text/javascript">
                  window.addEventListener('domready',function(){​
                  L'erreur est déclenchée par la définition de jtElement dans cette fonction qui suit la précédente
                  Code:
                  function loadData() {
                  var jtElement = $('jt-accordion').getElement('div.jt-ajax');
                  if ((jtElement) && (jtElement.hasClass('jt-ajax'))) {
                  jtElement.removeClass('jt-ajax');
                  var index = jtElement.id;
                  var myRequest = new Request({
                  url: 'index.php?option=com_joaktree&format=raw&tmpl=component&view=joaktreestart&layout=_names&treeId=7&filter='+index.replace('-jt-cnt', ''),
                  method: 'get',
                  onFailure: function(xhr) {
                  alert('Error occured for url: ' + url);
                  },
                  onComplete: function(response) {
                  HandleResponseInd(index, response);
                  }
                  }).send();
                  }
                  }​
                  "Patience et longueur de temps font plus que force ni que rage..." (La Fontaine : Le Lion et le Rat) - "Il n'y a pas de problèmes; il n'y a que des solutions" (André Gide).
                  MoovJla et LazyDbBackup sur www.joomxtensions.com - FaQ sur www.fontanil.info - Site pro : www.robertg-conseil.fr chez PHPNET, sites perso chez PlanetHoster + sites gérés chez PHPNET, PlanetHoster, Ionos et OVH

                  Commentaire

                  Annonce

                  Réduire
                  Aucune annonce pour le moment.

                  Partenaire de l'association

                  Réduire

                  Hébergeur Web PlanetHoster
                  Travaille ...
                  X