Pb info bulle javascript sous firefox

Fermé
babass - 12 mars 2010 à 17:49
bg62 Messages postés 23590 Date d'inscription samedi 22 octobre 2005 Statut Modérateur Dernière intervention 15 avril 2024 - 13 mars 2010 à 10:45
Bonjour,

En bon autodidacte, j'ai décidé de peaufiner mon site : www.case.fr

J'ai voulu mes des infobulles sur les icônes des deux guide en bas de la page d'accueil....

Elle s'affiche tout comme il faut sous internet explorer mais sont invisibles sous firefox (en fait, elles se retrouve en bas de page.... mais faut scroller pour les voir....)

J'avais trouver le code ici : http://damienalexandre.fr/Info-Bulle-en-Javascript.html


1. <script language="javascript" type="text/javascript">
2. <!--
3. function GetId(id)
4. {
5. return document.getElementById(id);
6. }
7. var i=false; // La variable i nous dit si la bulle est visible ou non
8.
9. function move(e) {
10. if(i) { // Si la bulle est visible, on calcul en temps reel sa position ideale
11. if (navigator.appName!="Microsoft Internet Explorer") { // Si on est pas sous IE
12. GetId("curseur").style.left=e.pageX + 5+"px";
13. GetId("curseur").style.top=e.pageY + 10+"px";
14. }
15. else { // Modif proposé par TeDeum, merci à lui
16. if(document.documentElement.clientWidth>0) {
17. GetId("curseur").style.left=20+event.x+document.documentElement.scrollLeft+"px";
18. GetId("curseur").style.top=10+event.y+document.documentElement.scrollTop+"px";
19. } else {
20. GetId("curseur").style.left=20+event.x+document.body.scrollLeft+"px";
21. GetId("curseur").style.top=10+event.y+document.body.scrollTop+"px";
22. }
23. }
24. }

25. }
26.
27. function montre(text) {
28. if(i==false) {
29. GetId("curseur").style.visibility="visible"; // Si il est cacher (la verif n'est qu'une securité) on le rend visible.
30. GetId("curseur").innerHTML = text; // on copie notre texte dans l'élément html
31. i=true;
32. }
33. }
34. function cache() {
35. if(i==true) {
36. GetId("curseur").style.visibility="hidden"; // Si la bulle est visible on la cache
37. i=false;
38. }
39. }
40. document.onmousemove=move; // dès que la souris bouge, on appelle la fonction move pour mettre à jour la position de la bulle.
41. //-->
42. </script></code>

Quand j'ai mis en ligne, le bulles s'affichaient en bas sous IE également, alors j'ai retiré le bout rajouté par TeDeum (en gras dans le code) et là ça a bien fonctionné sous IE, mais pas sous firefox.....

Du coup, voici mon code :

<!--
function GetId(id)
{
return document.getElementById(id);
}
var i=false; // La variable i nous dit si la bulle est visible ou non

function move(e) {
if(i) { // Si la bulle est visible, on calcul en temps reel sa position ideale
if (navigator.appName!="Microsoft Internet Explorer") { // Si on est pas sous IE
GetId("curseur").style.left=e.pageX + 5+"px";
GetId("curseur").style.top=e.pageY + 10+"px";
}

}
}

function montre(text) {
if(i==false) {
GetId("curseur").style.visibility="visible"; // Si il est cacher (la verif n'est qu'une securité) on le rend visible.
GetId("curseur").innerHTML = text; // on copie notre texte dans l'élément html
i=true;
}
}
function cache() {
if(i==true) {
GetId("curseur").style.visibility="hidden"; // Si la bulle est visible on la cache
i=false;
}
}
document.onmousemove=move; // dès que la souris bouge, on appelle la fonction move pour mettre à jour la position de la bulle.
//-->

</script>

Qui saurait le pourquoi du comment ???
Là, moi je sèche complètement....

Merci d'avance et à bientôt.
A voir également:

3 réponses

Merci Bg, le problème c'est qu'en fait je ne suis pas encore spécialiste du code....
Je ne comprends rien à ce que j'écris.... en fait, je fais du copier coller de codes que je trouve ou je suis des tutos et ensuite, je tripote dans le code....
Bref je fonctionne par essais/erreurs du genre "si je fais ça, ça fait ça...."

C'est comme ça je j'ai trouver qu'en supprimant l'ajout dont je parlais plu haut, l'info bulle était bien positionnée dans IE.....

J'ai tenter de comprendre le code de la page dont tu m'a parlé parce que franchement, j'aime bien la présentation.... mais je ne le trouve pas...
En plus, où est le lien avec ce que j'ai rentré dans le CSS de mon site ?....

Bref, j'y comprend pas grand chose.....

Peux-tu alors m'aider en me donnant la partie de code qui m'intéresse dans le script ?
1
bg62 Messages postés 23590 Date d'inscription samedi 22 octobre 2005 Statut Modérateur Dernière intervention 15 avril 2024 2 362
12 mars 2010 à 20:33
il faut :
un div vide (qui servira de bulle).

as-tu fait ?
mais tu peux faire soit avec JavaScript soit avec CSS ...
https://www.unesourisetmoi.info/
regarde sur les liens textes et sur les 3 images au centre
tu peux ensuite voir la config et le codage dans le code source ...
pour le JS c'est un peu plus complexe que ça quand même ...
:)
0
bg62 Messages postés 23590 Date d'inscription samedi 22 octobre 2005 Statut Modérateur Dernière intervention 15 avril 2024 2 362
13 mars 2010 à 10:45
dans ce cas on va essayer dde faire simple :
http://peutetreunereponse.over-blog.com/article-6614978.html
en css et ça passe partout !
:)
0