Aide:Trouver les scripts défectueux
Si vous rencontrez des problèmes avec les gadgets locaux ou les scripts utilisateurs, cela est souvent dû à du code JavaScript (le langage de programmation utilisé pour développer les gadgets) défectueux ou à des dépendances non déclarées avec d’autres éléments de code.
Pour localiser le code problématique et l'endroit à corriger, vous devrez utiliser les outils de développement de votre navigateur web. Cet outil, combiné à une URL spéciale, vous aidera à identifier les scripts cassés.
Guide
Assurez-vous d’avoir une configuration à jour
Pour commencer, assurez-vous que votre navigateur est à jour. Les fonctionnalités de MediaWiki ainsi que certains scripts ne sont pas pris en charge par certains anciens navigateurs pour des raisons de sécurité.
Ensuite, purgez le cache de la page pour forcer le ré-affichage de la page à partir de son code source et pour forcer les scripts à redémarrer.
Ces deux points résolvent la plupart des problèmes.
Si vous avez un outil comme « NoScript » ou un bloqueur de publicités installé sur votre navigateur Web, assurez-vous que les scripts sont autorisés pour wikipedia.org, wikimedia.org, mediawiki.org, et wikidata.org.
Tester les problèmes liés aux scripts et aux gadgets
Pour tester si votre problème est lié aux scripts utilisateur ou aux gadgets, vous pouvez essayer de désactiver temporairement et simultanément tous les scripts et les styles.
Pour cela, ajoutez le paramètre safemode (?safemode=1
) à l’adresse web (URL) de la page sur laquelle vous voyez le problème.
Exemple :
https://www.mediawiki.org/wiki/Help:Locating_broken_scripts?safemode=1
Si l’URL inclut déjà un ?
, ajoutez &safemode=1
à la place.
Exemple :
https://www.mediawiki.org/w/index.php?title=Help:Locating_broken_scripts&safemode=1
Si vous rencontrez encore des problèmes sur la page que vous testez en mode sécurisé, et que votre navigateur est à jour, veuillez contactez un développeur MediaWiki (voir Comment signaler un bogue). Si vous n’avez plus de problème en utilisant le mode sécurisé, cela signifie qu’il y a un problème de script ou de gadget. Vous devez identifier le problème.
Testez si les problèmes sont liés aux extensions de votre navigateur
Certains problèmes peuvent résulter d’interactions entre Wikipédia et certaines extensions du navigateur. La manière la plus facile de le tester est d’essayer la même action avec toutes les extensions désactivées et pour faire cela cela le plus simplement, du moins avec les navigateurs Google Chrome et Firefox, c’est de répéter l’opération en utilisant la « navigation anonyme » ou « mode invité » où, par défaut, le navigateur désactive toutes les extensions. Si le problème disparaît quand vous naviguez de manière anonyme, essayez de le réduire en désactivant temporairement les extensions l'une après l'autre, jusqu'à trouver la coupable.
Si vous considérez que le problème est directement lié à une extension du navigateur, alors vous devez le signaler aux développeurs de l'extension. Si vous choisissez de le rapporter sur un forum de discussion de wiki Wikipédia, mentionnez l'extension de votre navigateur dans le rapport.
Identifier les problèmes
Les liens suivants expliquent comment faire cela pour les navigateurs suivants :
Après les avoir ouverts, ajoutez ?debug=true
à l’adresse web (URL) de la page sur laquelle vous voyez le problème.
Exemple :
https://www.mediawiki.org/wiki/Help:Locating_broken_scripts?debug=true
Si l’URL contient déjà un ?
, ajoutez plutôt &debug=true
à la place.
Exemple :
https://www.mediawiki.org/w/index.php?title=Help:Locating_broken_scripts&debug=true
S’il y a un problème avec JavaScript, une erreur devrait être affichée dans la « console » des outils de développement.
Assurez-vous que « JavaScript » ou « JS » est activé ici et désactivez éventuellement les autres sorties pour qu’elles ne perturbent pas la lecture :
Cliquez sur le nom de fichier sur la droite. Cela va ouvrir la vue « Débogueur ». Le panneau droit va afficher le code qui a besoin d’être corrigé. Le panneau gauche va afficher quel fichier a besoin d’être corrigé (il est possible que vous deviez faire défiler la liste pour trouver le fichier qui est surligné). Faites un clic droit sur le fichier pour l’ouvrir dans un nouvel onglet :
En raison de la manière dont les fichiers sont « chargés », l’URL exacte du fichier peut ne pas être évidente. Vous devez donc regarder le haut du fichier pour voir son nom.
Ce nom peut être un simple commentaire (quelque chose comme // Title
).
Les problèmes qui doivent être corrigés pourraient être dans le fichier local MediaWiki:Common.js
de ce wiki, dans vos fichiers personnels tel User:MyUserName/common.js
(ou autres fichiers .js créés sous User:MyUserName/
), ou dans le code d’un des gadgets disponibles sur ce wiki, ou encore dans les définitions des dépendances du code pour les gadgets définis dans MediaWiki:Gadgets-definition
sur ce wiki.
Pour plus de détails techniques, vous pouvez regarder comment passer en mode débogage.
Corriger le problème
Vous trouverez la plupart des scripts en regardant dans m:Special:MyPage/global.js
sur Meta et localement sur Special:MyPage/common.js
, Special:MyPage/vector.js
(ou des pages nommées de manière similaire si vous utilisez un habillage différent, par exemple Special:MyPage/monobook.js
pour l’habillage MonoBook) et tout ce qui est sélectionné localement dans les Special:Preferences#mw-prefsection-gadgets
.
Les problèmes des scripts peuvent avoir des causes multiples. Nous vous conseillons de contacter quelqu’un qui connait JavaScript pour vous aider. (Si vous avez des connaissances primaires en JavaScript, regardez T164242 pour quelques bons conseils et liens vers les informations supplémentaires).
Par ailleurs, vous pouvez désactiver les scripts.
Si le script défectueux provient d’un gadget, désactivez ce dernier dans vos préférences.
Si le script défectueux est sur une page .js ou sur la votre, désactivez-le en le commentant. Ajoutez /*
au début du code concerné et */
à la fin.
Vous pouvez aussi désactiver le script en ôtant toutes les lignes qui en font partie dans votre page .js, ou en les mettant en commentaire avec //
au début de chaque ligne concernée.
Autres manières d’identifier les scripts défectueux
- Notez les gadgets et scripts que vous utilisez sur votre compte.
- Désactivez tous les scripts et gadgets de votre compte.
- Ré-activez un gadget.
- Nettoyez votre cache.
- Regardez si le problème persiste :
- si ce n’est pas le cas, retournez à l’étape 3.
- si oui, corrigez le script et retournez à l’étape 3 pour d’autres scripts potentiellement défectueux.
Les gadgets qui n'ont aucun rapport peuvent néanmoins casser les choses les plus étranges. Pour les réduire, désactivez tous les gadgets d'une section donnée de la liste des préférences et observez si c'est mieux. Puis, si cela ne fonctionne pas, essayez de désactiver une autre section de gadgets. Vous trouverez éventuellement la section de gadgets où réside le problème. Ensuite désactivez les gadgets de cette section les uns après les autres. Avant de faire quoi que ce soit, faites une copie d'écran de la page complète des préférences concernant les gadgets. De cette manière, vous pouvez retrouver ce que vous aimez. Firefox est doté d'un outil de capture d'écran vous permettant d'avoir la page complète y compris avec les parties n'apparaissant pas sur l'écran.
Voir aussi
- ResourceLoader/Architecture#Disable on a single page
- wikitech:Client errors – Infrastructure Wikimedia pour journaliser les erreurs Javascript