[javascript] Infobulle en dessous des liens

Fermé
afrodje Messages postés 759 Date d'inscription mardi 13 mars 2007 Statut Membre Dernière intervention 22 janvier 2014 - 12 nov. 2008 à 11:26
Marco la baraque Messages postés 996 Date d'inscription vendredi 9 mai 2008 Statut Contributeur Dernière intervention 5 novembre 2009 - 12 nov. 2008 à 19:52
Salut.
J'ai récupéré le code sur www.toutjavascript.com pour avoir des info bulles.

Le probleme est que cette infobulle passe en dessous des liens alors qu'elle doit etre au premier plan...

Voici la fonction Affbulle() :


var IB=new Object;
var posX=0;posY=0;
var xOffset=0;yOffset=250;
function AffBulle(texte) {
			  contenu="<TABLE border=0 cellspacing=0 cellpadding="+IB.NbPixel+"><TR bgcolor='"+IB.ColContour+"'><TD><TABLE border=0 cellpadding=2 cellspacing=0 bgcolor='"+IB.ColFond+"'><TR><TD><FONT size='-1' face='arial' color='"+IB.ColTexte+"'>"+texte+"</FONT></TD></TR></TABLE></TD></TR></TABLE>&nbsp;";
			  var finalPosX=posX-xOffset;
			  if (finalPosX<0) finalPosX=0;
			  if (document.layers) {
				document.layers["bulle"].document.write(contenu);
				document.layers["bulle"].document.close();
				document.layers["bulle"].top=posY+yOffset;
				document.layers["bulle"].left=finalPosX;
				document.layers["bulle"].visibility="show";}
			  if (document.all) {
				//var f=window.event;
				//doc=document.body.scrollTop;
				bulle.innerHTML=contenu;
				document.all["bulle"].style.top=posY+yOffset;
				document.all["bulle"].style.left=finalPosX;//f.x-xOffset;
				document.all["bulle"].style.visibility="visible";
			  }
			  //modif CL 09/2001 - NS6 : celui-ci ne supporte plus document.layers mais document.getElementById
			  else if (document.getElementById) {
				document.getElementById("bulle").innerHTML=contenu;
				document.getElementById("bulle").style.top=posY+yOffset;
				document.getElementById("bulle").style.left=finalPosX;
				document.getElementById("bulle").style.visibility="visible";
			  }
}



Voici l'appel :



echo '<SCRIPT language="JavaScript">InitBulle("navy","#FFCC66","orange",1);
		  
		  </SCRIPT>';
 
echo "<font color='red'>•</font>&nbsp;<A class=info href='".$url_appli."' target='DETAIL' onMouseOver=\"AffBulle('".$detail_info_bulle."')\" onMouseOut=\"HideBulle()\">".$titre_appli."</A><br />";


Merci

A voir également:

1 réponse

Marco la baraque Messages postés 996 Date d'inscription vendredi 9 mai 2008 Statut Contributeur Dernière intervention 5 novembre 2009 328
12 nov. 2008 à 19:52
Bonsoir Afrodge,
L'attribut css permettant de gérer le niveau des couches est z_index.
Il faut ici préciser que le z_index de ta bulle est grand (on va prendre 100, en principe ça devrait être au dessus de tout le reste) :
...
document.layers["bulle"].left=finalPosX;
document.layers["bulle"].visibility="show";
document.layers["bulle"].zIndex="100";}
...
document.all["bulle"].style.left=finalPosX;//f.x-xOffset;
document.all["bulle"].style.visibility="visible";
document.all["bulle"].style.zIndex="100";
...
document.getElementById("bulle").style.left=finalPosX;
document.getElementById("bulle").style.visibility="visible";
document.getElementById("bulle").style.zIndex="100";
...


Cordialement,
0