ScriptS fonctionnels mais avec une erreur

3 participants

Voir le sujet précédent Voir le sujet suivant Aller en bas

Résolu ScriptS fonctionnels mais avec une erreur

Message par demeter1 Mar 26 Déc 2017 - 15:45

Détails techniques

Version du forum : phpBB2
Poste occupé : Administrateur
Navigateur(s) concerné(s) : Opera
Personnes concernées par le problème : Moi uniquement
Lien du forum : http://altitudetropicale.forums-actifs.com/index.forum

Description du problème

Bonjour à tous,
je suis en train de compiler mes js via closure compiler (chrome).

j'ai une erreur sur chacun de ces js que je n'arrive pas à comprendre

Code:
(function() {
  window.fmtabs = {
      add: function (name) {
        $('#fa_right').prepend('<div class="toolbar_name">' + name + '</div>');
      },
      list: function (name, html) {
            $('#fa_right').prepend('<div id="toolbar_list_name_' + name + '" class="toolbar_list_name">' + name + '</div><div id="toolbar_list_' + name.replace(/\s/g, '_') + '" class="toolbar_list">' + html + '</div>');
            $('#toolbar_list_name_' + name.replace(/\s/g, '_')).click(function() {
              if (this.className == "toolbar_list_name") this.className += " active";
              else this.className = "toolbar_list_name";
              this.nextSibling.style.left = this.offsetLeft + 'px';
              this.nextSibling.style.top = this.offsetHeight + 'px';
              $(this.nextSibling).slideToggle();
            });
      }
  };
})();
$(window).load(function () {
    fmtabs.list('Informations', '
 <ul>
<li class="fa_separator"></li><div class="contentText ellipsis"><a href="/search?search_id=newposts">Voir les nouveaux messages depuis votre dernière visite</a></div>
<li class="fa_separator"></li>
<div class="contentText ellipsis"><a href="/search?search_id=activetopics">Sujets actifs du jour</a><div>
<li class="fa_separator"></li>
<div class="contentText ellipsis"><a href="/search?search_id=egosearch">Voir ses messages</a> <div>
<li class="fa_separator"></li>
<div class="contentText ellipsis"><a href="/search?search_id=unanswered">Voir les messages sans réponses</a></div>
<li class="fa_separator"></li>
<div class="contentText ellipsis"><a href="/portal?pid=1&tt=1">Les 100 derniers sujets</a></div>
<li class="fa_separator"></li>

<div class="contentText ellipsis"><a href="/portal?pid=63">Les 25 derniers sujets : lecture du premier topic</a></div>
<li class="fa_separator"></li>

<div class="contentText ellipsis"><font color="black">Les 25 derniers topics par forum</font><br /> <select onchange="location = this.value" class="c1"><option selected="selected">Choisir la section</option><option value="/portal?pid=54">Vie du site</option><option value="/portal?pid=5">Les végétaux</option><option value="/portal?pid=55">Aspects généraux</option><option value="/portal?pid=56">Maladies et ravageurs</option><option value="/portal?pid=57">Visites de jardins</option><option value="/portal?pid=58">Fiches et voyages</option><option value="/portal?pid=59">Échanges et bons plans</option><option value="/portal?pid=60">Liens du web</option><option value="/portal?pid=61">Le café&nbsp;et&nbsp;bricolage</option></select></div>
 </ul>
');
 
});

le signalement :
Code:
JSC_PARSE_ERROR: Parse error. Unterminated string literal at line 19 character 32
    fmtabs.list('Informations', '

J'i bien compris que le script à un soucis au niveau de la chaîne de caractères au niveau de la balise ul mais hormis cela .......


Idem sur celui-ci
Code:
\?f=\d+&mode=newtopic/.test(window.location.search) && $(function() {
  var s = document.getElementsByTagName('INPUT'),i;
  for (i=0; i<s.length; i++) {
    if (/subject/.test(s[i].name)) {
      var d = document.createElement('DIV');
      d.innerHTML = '<div class="h3">Topics similaires</div><div id="topicSimilar">Aucun sujet similaire..</div>';
      s[i].parentNode.appendChild(d);
      s[i].onkeyup = function() {
        if (this.value.length > 3) $('#topicSimilar').load('/search?search_keywords='+encodeURIComponent(this.value)+' a.topictitle', function() {
          $(this).find('a').attr({'target' : '_blank', 'style' : 'display:block'});
        });
        else $('#topicSimilar').html('Aucun sujet similaire.');
      }
    }
  }
});

Code:
JSC_PARSE_ERROR: Parse error. Invalid escape sequence at line 1 character 1
\?f=\d+&mode=newtopic/.test(window.location.search) && $(function() {
 ^
Merci par avance pour votre aide
demeter1

demeter1
Membre actif

Masculin
Messages : 8993
Inscrit(e) le : 23/01/2009

https://altitudetropicale.forums-actifs.com/
demeter1 a été remercié(e) par l'auteur de ce sujet.

Résolu Re: ScriptS fonctionnels mais avec une erreur

Message par Faline Mar 26 Déc 2017 - 18:08

Bonjour,

J'ai l'impression que le détecteur d'erreurs signale au caractère près où se trouve la faute. Dans l'hypothèse que ton code ici reproduit la numérotation des lignes de l'original : pour le premier, la séquence
Code:
', '
semble poser problème. Est-ce l'espace ?
Pour le 2e, c'est le tout premier caractère. Est-ce bien normal qu'un js commence par une barre oblique "\" ?
Faline

Faline
Membre habitué

Féminin
Messages : 1480
Inscrit(e) le : 16/08/2006

https://laststickers.forumactif.com
Faline a été remercié(e) par l'auteur de ce sujet.

Résolu Re: ScriptS fonctionnels mais avec une erreur

Message par demeter1 Mar 26 Déc 2017 - 20:50

Bonjour Faline,
pour le premier code, j'ai suprimé tous les espaces

Code:
(function() {
  window.fmtabs = {
      add: function (name) {
        $('#fa_right').prepend('<div class="toolbar_name">' + name + '</div>');
      },
      list: function (name, html) {
            $('#fa_right').prepend('<div id="toolbar_list_name_' + name + '"class="toolbar_list_name">' + name + '</div><div id="toolbar_list_' + name.replace(/\s/g, '_') + '" class="toolbar_list">' + html + '</div>');
            $('#toolbar_list_name_' + name.replace(/\s/g, '_')).click(function() {
              if (this.className == "toolbar_list_name") this.className += "active";
              else this.className = "toolbar_list_name";
              this.nextSibling.style.left = this.offsetLeft + 'px';
              this.nextSibling.style.top = this.offsetHeight + 'px';
              $(this.nextSibling).slideToggle();
            });
      }
  };
})();
$(window).load(function () {
    fmtabs.list('Informations','
 <ul>
<li class="fa_separator"></li><div class="contentText ellipsis"><a href="/search?search_id=newposts">Voir les nouveaux messages depuis votre dernière visite</a></div>
<li class="fa_separator"></li>
<div class="contentText ellipsis"><a href="/search?search_id=activetopics">Sujets actifs du jour</a><div>
<li class="fa_separator"></li>
<div class="contentText ellipsis"><a href="/search?search_id=egosearch">Voir ses messages</a> <div>
<li class="fa_separator"></li>
<div class="contentText ellipsis"><a href="/search?search_id=unanswered">Voir les messages sans réponses</a></div>
<li class="fa_separator"></li>
<div class="contentText ellipsis"><a href="/portal?pid=1&tt=1">Les 100 derniers sujets</a></div>
<li class="fa_separator"></li>
<div class="contentText ellipsis"><a href="/portal?pid=63">Les 25 derniers sujets : lecture du premier topic</a></div>
<li class="fa_separator"></li>
<div class="contentText ellipsis"><font color="black">Les 25 derniers topics par forum</font><br /> <select onchange="location = this.value" class="c1"><option selected="selected">Choisir la section</option><option value="/portal?pid=54">Vie du site</option><option value="/portal?pid=5">Les végétaux</option><option value="/portal?pid=55">Aspects généraux</option><option value="/portal?pid=56">Maladies et ravageurs</option><option value="/portal?pid=57">Visites de jardins</option><option value="/portal?pid=58">Fiches et voyages</option><option value="/portal?pid=59">Échanges et bons plans</option><option value="/portal?pid=60">Liens du web</option><option value="/portal?pid=61">Le café&nbsp;et&nbsp;bricolage</option></select></div>
 </ul>
');
});

j'obtiens la même erreur
Code:
JSC_PARSE_ERROR: Parse error. Unterminated string literal at line 19 character 31
    fmtabs.list('Informations','

Pour le second, je t'avouerai que mes connaissances en javascript sont à l'état embryonnaire. le js fonctionne en l'état mais je suis incapable de juger son codage.
demeter1

demeter1
Membre actif

Masculin
Messages : 8993
Inscrit(e) le : 23/01/2009

https://altitudetropicale.forums-actifs.com/
demeter1 a été remercié(e) par l'auteur de ce sujet.

Résolu Re: ScriptS fonctionnels mais avec une erreur

Message par Faline Mar 26 Déc 2017 - 21:19

Te souviens-tu encore d'où tu as ce(s) script(s) pour pouvoir le(s) comparer à l'original ?

Je suppose que cela vient de quelque part par là... :

http://help.forumotion.com/t145590-add-a-similar-module-in-the-center-of-notifications-resolved-small-conflict-with-a-second-js#997369
Faline

Faline
Membre habitué

Féminin
Messages : 1480
Inscrit(e) le : 16/08/2006

https://laststickers.forumactif.com
Faline a été remercié(e) par l'auteur de ce sujet.

Résolu Re: ScriptS fonctionnels mais avec une erreur

Message par demeter1 Mer 27 Déc 2017 - 0:23

Re Faline,
le premier provient d'une aide sur le support anglais
http://help.forumotion.com/t138835-insert-icon-with-drop-down-menu-in-tool-bar-punbb

Pour le second , je n'en ai hélas pas retrouvé la trace.
demeter1

demeter1
Membre actif

Masculin
Messages : 8993
Inscrit(e) le : 23/01/2009

https://altitudetropicale.forums-actifs.com/
demeter1 a été remercié(e) par l'auteur de ce sujet.

Résolu Re: ScriptS fonctionnels mais avec une erreur

Message par Faline Mer 27 Déc 2017 - 0:37

D'après Google cela pourrait se trouver sur le fofo de Milouze14, mais comme je n'en suis pas membre, je ne peux pas y accéder pour voir si c'est le bon script.
Faline

Faline
Membre habitué

Féminin
Messages : 1480
Inscrit(e) le : 16/08/2006

https://laststickers.forumactif.com
Faline a été remercié(e) par l'auteur de ce sujet.

Résolu Re: ScriptS fonctionnels mais avec une erreur

Message par demeter1 Mer 27 Déc 2017 - 2:03

Pour le second, j'ai retrouvé l'origine. Il provient du support italien
http://aiuto.forumattivo.it/t19683-titolo-topic-suggerimento-su-parole-chiave
demeter1

demeter1
Membre actif

Masculin
Messages : 8993
Inscrit(e) le : 23/01/2009

https://altitudetropicale.forums-actifs.com/
demeter1 a été remercié(e) par l'auteur de ce sujet.

Résolu Re: ScriptS fonctionnels mais avec une erreur

Message par Faline Mer 27 Déc 2017 - 3:16

Eh ben voilà, tu avais tout simplement perdu en route le premier caractère. Est-ce que tout est rentré dans l'ordre pour ce deuxième script ?


Dernière édition par Faline le Mer 27 Déc 2017 - 4:37, édité 1 fois
Faline

Faline
Membre habitué

Féminin
Messages : 1480
Inscrit(e) le : 16/08/2006

https://laststickers.forumactif.com
Faline a été remercié(e) par l'auteur de ce sujet.

Résolu Re: ScriptS fonctionnels mais avec une erreur

Message par demeter1 Mer 27 Déc 2017 - 3:35

l'adjonction du / sur le script présent dans la gestion des js   fait beuger au moins 90% des js présents sur le forum (comme le script d'origine d'ailleurs).

Pour ce qui est de Téo, désolé mais je ne capte pas ; c'est un nouveau modérateur ???
demeter1

demeter1
Membre actif

Masculin
Messages : 8993
Inscrit(e) le : 23/01/2009

https://altitudetropicale.forums-actifs.com/
demeter1 a été remercié(e) par l'auteur de ce sujet.

Résolu Re: ScriptS fonctionnels mais avec une erreur

Message par Faline Mer 27 Déc 2017 - 4:53

Pardon, je croyais que c'était toi qui avais demandé le code là-bas pour ton forum. Je viens de voir que ce n'était pas toi. Toi, tu n'avais même plus été connecté là-bas depuis une année avant que le topic avec le script a été ouvert. Comme le topic n'a jamais été fermé, tu pourrais demander là-bas.

Pour ce qui est du premier script, il a été tellement modifié par rapport à l'original que je n'ai aucune idée de ce qui lui arrive. Je suis juste étonnée de la syntaxe...

Exemple :
à la ligne 23 et 25 il y a des <div> qui se terminent par <div> plutôt que par </div>. Est-ce que ça ne fait pas ramer le script ? Et l'expression entre une seule paire d'apostrophes me semble bien longue.

N'as-tu pas un forum test pour pouvoir travailler sur tes scripts sans mettre en danger le fonctionnement du fofo ?

Edit :
J'avais oublié Teo. C'est le modéractif chez forumattivo, qui avait écrit le script (il est d'ailleurs aussi membre de fdf : https://forum.forumactif.com/u172185 ). Comme le topic là-bas n'a jamais été fermé, tu pourrais encore poser tes questions... D'abord j'avais cru par erreur que c'était toi, qui avais ouvert ce topic.


Dernière édition par Faline le Mer 27 Déc 2017 - 23:10, édité 1 fois
Faline

Faline
Membre habitué

Féminin
Messages : 1480
Inscrit(e) le : 16/08/2006

https://laststickers.forumactif.com
Faline a été remercié(e) par l'auteur de ce sujet.
  • 0

Résolu Re: ScriptS fonctionnels mais avec une erreur

Message par Adam_sfp Mer 27 Déc 2017 - 9:27

Bonjour

Quand Demeter fait le ménage c'est jusqu'au bout ;-)

Pour le premier script il y a une mauvaise interprétation entre
Code:
'
et
Code:
"
apparemment...
Peut être comme ceci
Code:
(function() {
  window.fmtabs = {add:function(name) {
    $("#fa_right").prepend('<div class="toolbar_name">' + name + "</div>");
  }, list:function(name, html) {
    $("#fa_right").prepend('<div id="toolbar_list_name_' + name + '" class="toolbar_list_name">' + name + '</div><div id="toolbar_list_' + name.replace(/\s/g, "_") + '" class="toolbar_list">' + html + "</div>");
    $("#toolbar_list_name_" + name.replace(/\s/g, "_")).click(function() {
      if (this.className == "toolbar_list_name") {
        this.className += " active";
      } else {
        this.className = "toolbar_list_name";
      }
      this.nextSibling.style.left = this.offsetLeft + "px";
      this.nextSibling.style.top = this.offsetHeight + "px";
      $(this.nextSibling).slideToggle();
    });
  }};
})();
$(window).load(function() {
  fmtabs.list("Informations", '<ul><li class="fa_separator"></li><div class="contentText ellipsis"><a href="/search?search_id=newposts">Voir les nouveaux messages depuis votre derni\u00e8re visite</a></div><li class="fa_separator"></li>\r\n<div class="contentText ellipsis"><a href="/search?search_id=activetopics">Sujets actifs du jour</a><div>\r\n<li class="fa_separator"></li><div class="contentText ellipsis"><a href="/search?search_id=egosearch">Voir ses messages</a> <div>\r\n<li class="fa_separator"></li>\r\n<div class="contentText ellipsis"><a href="/search?search_id=unanswered">Voir les messages sans r\u00e9ponses</a></div>\r\n<li class="fa_separator"></li>\r\n<div class="contentText ellipsis"><a href="/portal?pid=1&tt=1">Les 100 derniers sujets</a></div><li class="fa_separator"></li>\r\n<div class="contentText ellipsis"><a href="/portal?pid=63">Les 25 derniers sujets : lecture du premier topic</a></div>\r\n<li class="fa_separator"></li>\r\n<div class="contentText ellipsis"><font color="black">Les 25 derniers topics par forum</font><br /> <select onchange="location = this.value" class="c1"><option selected="selected">Choisir la section</option><option value="/portal?pid=54">Vie du site</option><option value="/portal?pid=5">Les v\u00e9g\u00e9taux</option><option value="/portal?pid=55">Aspects g\u00e9n\u00e9raux</option><option value="/portal?pid=56">Maladies et ravageurs</option><option value="/portal?pid=57">Visites de jardins</option><option value="/portal?pid=58">Fiches et voyages</option><option value="/portal?pid=59">\u00c9changes et bons plans</option><option value="/portal?pid=60">Liens du web</option><option value="/portal?pid=61">Le caf\u00e9&nbsp;et&nbsp;bricolage</option></select></div>\r\n </ul>');
});

Pour le 2ème une erreur au niveau de l'expression régulière apparemment....

Cdt.
Adam_sfp

Adam_sfp
Membre actif

Masculin
Messages : 4465
Inscrit(e) le : 18/04/2008

http://antonyadam.kanak.fr
Adam_sfp a été remercié(e) par l'auteur de ce sujet.

Résolu Re: ScriptS fonctionnels mais avec une erreur

Message par Faline Mer 27 Déc 2017 - 9:42

Merci Adam !

Est-ce que la surabondance de <div> par rapport aux </div> n'est pas une erreur ?

<div class="contentText ellipsis"><a href="/search?search_id=activetopics">Sujets actifs du jour</a><div>\r\n<li class="fa_separator"></li><div class="contentText ellipsis"><a href="/search?search_id=egosearch">Voir ses messages</a> <div>
Faline

Faline
Membre habitué

Féminin
Messages : 1480
Inscrit(e) le : 16/08/2006

https://laststickers.forumactif.com
Faline a été remercié(e) par l'auteur de ce sujet.
  • 0

Résolu Re: ScriptS fonctionnels mais avec une erreur

Message par Adam_sfp Mer 27 Déc 2017 - 10:05

Bonjour @Faline

Je n'ai pas compté  Very Happy
En testant avec cet outil par exemple https://closure-compiler.appspot.com il n'y a plus d'erreurs apparemment...
Adam_sfp

Adam_sfp
Membre actif

Masculin
Messages : 4465
Inscrit(e) le : 18/04/2008

http://antonyadam.kanak.fr
Adam_sfp a été remercié(e) par l'auteur de ce sujet.

Résolu Re: ScriptS fonctionnels mais avec une erreur

Message par demeter1 Mer 27 Déc 2017 - 23:42

Bonjour Adam_sfp, bonjour Faline,

Adam_sfp un grand merci pour cette correction qui m'a permis de compresser le js en toute quiétude.

Faline, merci pour votre implication dans le sujets.

Bonne soirée à vous deux.
demeter1

demeter1
Membre actif

Masculin
Messages : 8993
Inscrit(e) le : 23/01/2009

https://altitudetropicale.forums-actifs.com/
demeter1 a été remercié(e) par l'auteur de ce sujet.

Résolu Re: ScriptS fonctionnels mais avec une erreur

Message par Faline Mer 27 Déc 2017 - 23:49

Je viens de tester chez moi le script de Teo, version originale : il fonctionne super bien et ne perturbe aucun autre script (pourtant sur ce forum test j'ai en plus de toutes les décos de Noël encore plusieurs scripts qui s'y sont accumulés après test) :
ScriptS fonctionnels mais avec une erreur Demete10

Serait-il intéressant de faire une suggestion fdf pour une section js, où on pourrait activer/désactiver les scripts un par un, en vue de trouver plus facilement quel script pourrait contenir une erreur... ?
Faline

Faline
Membre habitué

Féminin
Messages : 1480
Inscrit(e) le : 16/08/2006

https://laststickers.forumactif.com
Faline a été remercié(e) par l'auteur de ce sujet.

Voir le sujet précédent Voir le sujet suivant Revenir en haut

- Sujets similaires

Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum