Color Picker ne fonctionne pas avec Firefox 7.01

Le
Dominique Ottello
Bonjour,

Un script Color Picker (1) fonctionne parfaitement bien avec Internet
Explorer 9 (32 et 64bits) ainsi qu'avec Opera 11.51 mais ne fonctionne
pas avec Firefox 7.01 (Fonctionnait avant la version 7).

Je connais assez bien PHP, mais pas du tout Javascript, et vous saurais
gré si vous pouviez m'indiquer une voie de solution au problème.

(1) Que l'on peut voir, par exemple à
http://fluxbb.fr/forums/viewtopic.php?id273
puis en validant le Cercle des couleurs de la barre du formulaire de
réponse rapide.
--
Ce n'est pas parce que l'erreur se propage qu'elle devient vérité. Gandhi
Technologie aéronautique : http://aviatechno.free.fr (http://ottello.net)
Concorde dans la presse de 1965 à 2003 : http://le.pointu.free.fr
Vidéos High-Tech et Jeu Vidéo
  • Présentation de Color OS 2.1, la nouvelle ROM Android d'Oppo basée sur Android ...
  • Vidéo de gameplay de la version GameBoy Color de Resident Evil jamais commercialisée et ...
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
SAM
Le #23825351
Le 05/10/11 11:18, Dominique Ottello a écrit :
Bonjour,

Un script Color Picker (1) fonctionne parfaitement bien avec Internet
Explorer 9 (32 et 64bits) ainsi qu'avec Opera 11.51 mais ne fonctionne
pas avec Firefox 7.01 (Fonctionnait avant la version 7).

Je connais assez bien PHP, mais pas du tout Javascript, et vous saurais
gré si vous pouviez m'indiquer une voie de solution au problème.

(1) Que l'on peut voir, par exemple à
http://fluxbb.fr/forums/viewtopic.php?id273



non, je vois rien là

et d'abord de quoi qu'y causent là avec :
Version 1.4.7 : [.tar.gz][.zip] (maj 13/09/2011)
la version de quoi ?
c'est-y une pub secrète de google ?

puis en validant le Cercle des couleurs de la barre du formulaire de
réponse rapide.



??? de quoi peux-tu bien causer ?
Moi je suis pas inscrit
Moi je vois que ton message à propos de 000000

où est ce colorpicker ?
son site web


firefox.7 a encore été renforcé côté protections vis-à-vis du JS
(je ne sais si je vais le garder encore longtemps)
(tous ça pour des possibles malveillances sur livret-de-tronches qu'il
faudrait fermer ce site une fois pour toutes)

--
Stéphane Moriaux avec/with iMac-intel
Dominique Ottello
Le #23826131
SAM
??? de quoi peux-tu bien causer ?
Moi je suis pas inscrit
Moi je vois que ton message à propos de 000000



Désolé, je n'ai plus pensé à l'inscription nécessaire !
Le forum "test" de mon site permet de voir le problème et le script sans
inscription :
http://aviatechno.free.fr/forum/viewtopic.php?idQ5

Sur la "barre" d'outils, clic sur le cercle de couleur pour obtenir le
Color Picker.
Sous IE9, ça fonctionne et pas sous Firefox 7.
Bol
Le #23826321
http://aviatechno.free.fr/forum/viewtopic.php?idQ5

Sur la "barre" d'outils, clic sur le cercle de couleur pour obtenir le
Color Picker.
Sous IE9, ça fonctionne et pas sous Firefox 7.



c'est ca qui pose pb

function compute_color(e)
{
var x = e.offsetX ? e.offsetX : (e.target ? e.clientX-e.target.x : 0);
var y = e.offsetY ? e.offsetY : (e.target ? e.clientY-e.target.y : 0);

x is NaN parce que e.target.x is undef

A+
Bol
Dominique Ottello
Le #23826431
"Bol"
x is NaN parce que e.target.x is undef



Excusez-moi de vous demander pardon, mais :

- 1 - pourquoi cela fonctionnait-il avant la version 7 de Firefox et
pourquoi cela ne pose-t-il pas de problème avec IE9 et Opera 11.5 ?

- 2 - comment puis-je corriger ce problème (Je suis néophyte en
Javascript).

Merci.
--
Il vaut mieux ignorer où l'on est, et savoir qu'on l'ignore, que de se
croire avec confiance où l'on n'est pas. Jean Dominique Cassini.
Technologie aéronautique - http://ottello.net - Les anciens de Vilgénis
Dominique Ottello
Le #23826591
Dominique Ottello
- 2 - comment puis-je corriger ce problème (Je suis néophyte en
Javascript).



Bonjour,

Grâce à des exemples de SAM (Stéphane Moriaux) trouvés sur le Web, dans
le fichier la fonction javascript compute_color(e), j'ai remplacé

var x = e.offsetX ? e.offsetX : (e.target ? e.clientX-e.target.x : 0);
var y = e.offsetY ? e.offsetY : (e.target ? e.clientY-e.target.y : 0);

par (Je mets comme un bloc de citation pour ne pas couper les lignes)

var x = e.layerX? e.layerX : e.offsetX? e.offsetX+document.body.scrollLeft : 0;
var y = e.layerY? e.layerY : e.offsetY? e.offsetY+document.body.scrollTop : 0;



Et, maintenant, ça fonctionne sous Firefox 7 tout en continuant à
fonctionner avec IE ou Opera.
--
Le logiciel de courrier d'Opera n'a rien de révolutionnaire
Forté Agent en faisait déjà autant, et même plus, depuis trois lustres
Tout comme The Bat depuis belle lurette !
SAM
Le #23828041
Le 05/10/11 16:48, Dominique Ottello a écrit :
Dominique Ottello
- 2 - comment puis-je corriger ce problème (Je suis néophyte en
Javascript).





heu ... là :
<http://aviatechno.free.fr/forum/viewtopic.php?idQ5
et + précisément, ici :
Ça fonctionne bien avec mon Fx.7.01

Grâce à des exemples de SAM (Stéphane Moriaux) trouvés sur le Web,



???
tu parles de ça :
et d'abord comment atterris-je là ?

dans le fichier la fonction javascript compute_color(e), j'ai remplacé

var x = e.offsetX ? e.offsetX : (e.target ? e.clientX-e.target.x : 0);
var y = e.offsetY ? e.offsetY : (e.target ? e.clientY-e.target.y : 0);

par (Je mets comme un bloc de citation pour ne pas couper les lignes)



??? je vois :
var x = e.layerX - margeX;
var y = e.layerY - margeY;
berlue-je ?

var x = e.layerX? e.layerX : e.offsetX? e.offsetX+document.body.scrollLeft : 0;
var y = e.layerY? e.layerY : e.offsetY? e.offsetY+document.body.scrollTop : 0;



Et, maintenant, ça fonctionne sous Firefox 7 tout en continuant à
fonctionner avec IE ou Opera.



c'est quand même dingue d'y arriver, non ?

--
Stéphane Moriaux avec/with iMac-intel
Dominique Ottello
Le #23828771
SAM
Ça fonctionne bien avec mon Fx.7.01



Ben oui ! Parce qu'entre temps, ça a été modifié « à la va vite » pour
que mes membres soient contents ; donc, plus de problèmes... pour le
moment... mais je vais creuser un peu plus.
--
Ce n'est pas parce qu'ils sont nombreux à avoir tort
qu'ils ont forcément raison. Coluche
Bol
Le #23829101
- 1 - pourquoi cela fonctionnait-il avant la version 7 de Firefox et
pourquoi cela ne pose-t-il pas de problème avec IE9 et Opera 11.5 ?



Je ne sais pas, et je ne trouve pas de reference à target.x
eventuellement à event.x mais pas event.target.x ( = element.x )

A+
Bol
SAM
Le #23830261
Le 06/10/11 10:40, Bol a écrit :
- 1 - pourquoi cela fonctionnait-il avant la version 7 de Firefox et
pourquoi cela ne pose-t-il pas de problème avec IE9 et Opera 11.5 ?



Je ne sais pas, et je ne trouve pas de reference à target.x
eventuellement à event.x mais pas event.target.x ( = element.x )



Je n'avais pas prêté grande attention à cette partie de la question mais
event.x
c'est pour IE
et comme Opera s'est efforcé d'être compatible IE, il le comprend aussi
(où qu'on clique la référence de positionnement principale sera la fenêtre)

Le coup du
event.target.x
c'est plus pour pour les autres du genre à la Mozilla
(la référence est l'objet cliqué, la fenêtre, une image, ... le target)

--
Stéphane Moriaux avec/with iMac-intel
Publicité
Poster une réponse
Anonyme