Envoyé par : nico@nc
Date : 17/05/2008 23:07
Bonjour,
Je cherche à faire un truc tout bête (enfin il me semble que ça l'est) pour une extension : un bouton qui charge une URL quand on clique dessus, et une autre quand on reclique, puis à nouveau la première, et ainsi de suite. Je commence tout juste à m'intéresser à JavaScript, donc il y a peut-être des énormités.
Voici le js en question :
PageHacker = { 1: function () { if (hackeron == on) { var hackeron = "off"; const offurl = "javascript:document.body.contentEditable='false'; void 0" document .getElementById("content") .webNavigation .loadURI(offurl, 0, null, null, null) } else { var hackeron = "on"; const onurl = "javascript:document.body.contentEditable='true'; void 0" document .getElementById("content") .webNavigation .loadURI(onurl, 0, null, null, null) } } }
Malheureusement il ne se passe rien, et rien n'apparaît dans la console d'erreur. Pour éventuellement tester en conditions : http://dl.free.fr/l3Y7hmYkO/pagehacker-1(..).
Merci.
Envoyé par : Paul Rouget
Date : 19/05/2008 14:04
if (hackeron == on) {
Manque pas les guillemets ?
Envoyé par : nico@nc
Date : 19/05/2008 18:11
Pas mieux avec les guillemets à on et la condition collée à if :
PageHacker = { 1: function () { if(hackeron == "on") { var hackeron = "off"; const offurl = "javascript:document.body.contentEditable='false'; void 0" document .getElementById("content") .webNavigation .loadURI(offurl, 0, null, null, null) } else { var hackeron = "on"; const onurl = "javascript:document.body.contentEditable='true'; void 0" document .getElementById("content") .webNavigation .loadURI(onurl, 0, null, null, null) } } }
Envoyé par : Paul Rouget
Date : 19/05/2008 18:31
Le déclaration de ta variable hackeron est dans le mauvais scope, donc tes affectations ne servent à rien.
Envoyé par : nico@nc
Date : 23/05/2008 18:30
Grrgnzz ?
J'ai tenté
PageHacker = { 1: function () { var hackeron; ...
ce n'est pas mieux.
(je rappelle que "Je commence tout juste à m'intéresser à JavaScript")
Merci
Envoyé par : nico@nc
Date : 23/05/2008 19:39
Je viens de remarquer que tout fonctionne (sauf la désactivation, je vais me pencher dessus) via le raccourci clavier, le problème doit donc venir du bouton (que j'ai trituré récemment).
édité... c'est réglé de côté, le bouton lance correctement le "mode édition". Par contre, aucun effet à un nouveau clic : pas de sortie de ce "mode".
Envoyé par : Paul Rouget
Date : 26/05/2008 14:40
Normal, toujours le soucis du scope. Regarde ce que c'est sur internet, mais ton "var " est au mauvais endroit.
Envoyé par : nico@nc
Date : 30/05/2008 21:38
Ça devrait donc marcher avec ce qui suit, non ?
PageHacker = { 1: function () { hackeron = "off"; if(hackeron == "on") { hackeron = "off"; const offurl = "javascript:document.body.contentEditable='false'; void 0" document .getElementById("content") .webNavigation .loadURI(offurl, 0, null, null, null) } else { hackeron = "on"; const onurl = "javascript:document.body.contentEditable='true'; void 0" document .getElementById("content") .webNavigation .loadURI(onurl, 0, null, null, null) } } }
Parce que ça ne va toujours pas.
Merci
Envoyé par : Paul Rouget
Date : 04/06/2008 10:06
Tu forces à "off", comment veux tu que ça fonctionne ?
Envoyé par : nico@nc
Date : 04/06/2008 17:41
Et dire qu'en regardant à nouveau ça me saute (presque) aux yeux !
En tout cas le problème est résolu avec l'aide de martin sur Geckozone.
Merci beaucoup pour l'aide apportée en tout cas. Et je me pencherais sérieusement sur javascript cet été...
Il n'est plus possible de poster des messages dans ce forum.
Copyright © 2003-2013 association xulfr, 2013-2016 Laurent Jouanneau - Informations légales.
Mozilla® est une marque déposée de la fondation Mozilla.
Mozilla.org™, Firefox™, Thunderbird™, Mozilla Suite™ et XUL™
sont des marques de la fondation Mozilla.