Question

J'écris un UserScript (= Greasemonkey) que je développe sous FireFox mais qui fonctionne sous Opera, FF et Chrome. J'ai changé tout mon script dans Firefox, en remplaçant tous les textes par des variables afin de pouvoir facilement porter le script vers d'autres langues. Maintenant, il ne fonctionne plus dans Opera et il ne montre aucune erreur dans la console (Dragonfly). Le script ne fait rien du tout, il doit donc y avoir une erreur de syntaxe que Firefox peut gérer mais pas Opera.

Je n'utilise aucune fonctionnalité spécifique de FireFox (GM_ *), comme je l'ai dit: je n'ai remplacé que des chaînes dans les scripts par des variables définies dans un nouveau tableau de "traduction".

Code pour insérer mon script:

(
 function()
 {
    var script = document.createElement("script");
    script.textContent = "(" + myFunctionName + ")()";
    document.body.appendChild(script);
 }
)();

Alors ...

  • Y a-t-il des éléments JavaScript que Firefox peut gérer mais pas Opera?

  • Ou puis-je faire fonctionner la console d'erreur pour un UserScript?

J'ai fait quelques recherches sur Google et cherché ces forums, mais je n'ai rien trouvé qui fonctionnait ...

PS: J'ai d'abord posté ceci sur les forums d'Opera, mais j'ai pensé que j'avais une bien meilleure chance de trouver un moyen de trouver une solution de débogage sur SOF.

PPS: En attendant, j'ai également essayé de localiser le problème avec JS Lint mais celui-ci donne une erreur lorsque vous éternuez.

Était-ce utile?

La solution

La console de messages (Ctrl + Maj + O) doit contenir des erreurs de UserScripts.Vous pouvez également essayer d'empaqueter votre script dans une extension et utiliser Dragonfly pour le débogage: http://dev.opera.com/articles/view/converting-userjs-to-extensions/

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top