Voici un sujet de forum trouvé sur un autre site :
La réponse était que c'est un bug connu d'IE et que le seul moyen était de faire disparaitre le select quand l'infobulle apparait.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55 Bonjour Je souhaiterais quelques infos sur le pb suivant j ai un petit script trouvé sur le net ( je n ai plus l url ) qui permet d afficher une info bulle dans toute balise supportant l evenement onmouseover il fonctionne parfaitement toutefois lorsque sous la balise est placé un champ forumaire liste ce champ s affiche par dessu la bulle alors que le pb n existe pas avec un champ texte ou tout autre chose ( image texte) a quoi est-ce du a votre avis et pourrait on y remedier. pourinfo le code est le suivant ( le tout est mis dans une variable $page pour un echo $page en php ) $page .="<script language=\"javascript\" type=\"text/javascript\"> <!-- 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\"; } else { // Modif proposé par TeDeum, merci à lui if(document.documentElement.clientWidth>0) { GetId(\"curseur\").style.left=20+event.x+document.documentElement.scrollLeft+\"px\"; GetId(\"curseur\").style.top=10+event.y+document.documentElement.scrollTop+\"px\"; } else { GetId(\"curseur\").style.left=20+event.x+document.body.scrollLeft+\"px\"; GetId(\"curseur\").style.top=10+event.y+document.body.scrollTop+\"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; // Cette fonction est a améliorer, il parait qu'elle n'est pas valide (mais elle marche) i=true; } } function cache() { if(i==true) { GetId(\"curseur\").style.visibility=\"hidden\"; // Si la bulle etais visible on la cache i=false; } } document.onmousemove=move; // des que la souris bouge, on appelle la fonction move pour mettre a jour la position de la bulle. //--> </script>";
Pas très élégant.
J'ai donc deux questions :
- Quelqu'un a t il une autre solution?
- Plus important : J'ai le même souci quand l'infobulle passe dessus un champ texte sur lequel on a le focus. L'infobulle passe sous le curseur de saisie de texte (le | qui clignote). Y a t il une solution qutre qu'enlever le focus du champs?
Merci d'avance.
Cordialement.
Sourivore.
Partager