Problème script javascript
charly59
-
rvbreiz Messages postés 2 Date d'inscription Statut Membre Dernière intervention -
rvbreiz Messages postés 2 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
alors voila, j'ai un script qui est censé afficher une bulle au survol d'un mot, problème, il affiche rien (ou je soupçonne plus en dehors du cadre du navigateur car quand je rappelle cette même fonction un peu plus bas, la bulle est bien affichée, mais tout en haut à gauche du de la fenêtre.
Voila mon script :
Si quelqu'un a une idée de ce qui ne vas pas ce serait très sympa de me l'indiquer !
Merci d'avance
alors voila, j'ai un script qui est censé afficher une bulle au survol d'un mot, problème, il affiche rien (ou je soupçonne plus en dehors du cadre du navigateur car quand je rappelle cette même fonction un peu plus bas, la bulle est bien affichée, mais tout en haut à gauche du de la fenêtre.
Voila mon script :
<script language='javascript' type="text/javascript"> var IB=new Object; var posX=0;posY=0; var xOffset=10;yOffset=10; 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>"; 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"; } 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"; } } function getMousePos(e) { if (document.all) { posX=event.x+document.body.scrollLeft; posY=event.y+document.body.scrollTop; } else { posX=e.pageX; posY=e.pageY; } } function HideBulle() { if (document.layers) {document.layers["bulle"].visibility="hide";} if (document.all) {document.all["bulle"].style.visibility="hidden";} else if (document.getElementById){document.getElementById("bulle").style.visibility="hidden";} } function InitBulle(ColTexte,ColFond,ColContour,NbPixel) { IB.ColTexte=ColTexte;IB.ColFond=ColFond;IB.ColContour=ColContour;IB.NbPixel=NbPixel; if (document.layers) { window.captureEvents(Event.MOUSEMOVE);window.onMouseMove=getMousePos; document.write("<layer name='bulle' top=0 left=0 visibility='hide'></layer>"); } if (document.all) { document.write("<div id='bulle' style='position:absolute;top:0;left:0;visibility:hidden'></div>"); document.onmousemove=getMousePos; } else if (document.getElementById) { document.onmousemove=getMousePos; document.write("<div id='bulle' style='position:absolute;top:0;left:0;visibility:hidden'></div>"); } } </script>
Si quelqu'un a une idée de ce qui ne vas pas ce serait très sympa de me l'indiquer !
Merci d'avance
A voir également:
- Problème script javascript
- Script vidéo youtube - Guide
- Mas script - Accueil - Windows
- Ghost script - Télécharger - Polices de caractères
- Telecharger javascript - Télécharger - Langages
- Script cmd - Guide
2 réponses
après une petite modification j'ai eu l'assurance que le texte s'affichait bien en haut à gauche du navigateur, mais uniquement dans firefox !
je n'ai aucun problème de fonctionnement dans Internet explorer !
Donc si quelqu'un a une idée de modif à apporter pour que ça fonctionne correctement dans firefox...
merci d'avance !
je n'ai aucun problème de fonctionnement dans Internet explorer !
Donc si quelqu'un a une idée de modif à apporter pour que ça fonctionne correctement dans firefox...
merci d'avance !
script un peu modifié et simplifié
<html>
<head>
<style>
.bulle {
color: #025DB3;
//font-weight:bold;
}
</style>
<script language='javascript' type="text/javascript">
var w3c =(document.getElementById)? true: false;
var IE = (document.all) ? true : false;
var ie5=(w3c && document.all)? true : false;
var mx,my;
var IB=new Object;
var xOffset=15;yOffset=45;
function AffBulle(texte)
{
//getMousePos();
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>";
var finalPosX=mx + xOffset;
if (finalPosX<0) finalPosX=0;
var finalPosY=my - yOffset;
if (finalPosY<0) finalPosY=30;
document.getElementById("bulle").innerHTML=contenu;
document.getElementById("bulle").style.top=finalPosY;
document.getElementById("bulle").style.left=finalPosX;
document.getElementById("bulle").style.visibility="visible";
}
function getMousePos()
{
alert(mx + " " + my);
}
function HideBulle()
{
document.getElementById("bulle").style.visibility="hidden";
}
function InitBulle(ColTexte,ColFond,ColContour,NbPixel)
{
IB.ColTexte = ColTexte;
IB.ColFond = ColFond;
IB.ColContour = ColContour;
IB.NbPixel = NbPixel;
}
function trackmouse(evt){
mx=(ie5)?event.clientX+document.body.scrollLeft:evt.pageX;
my=(ie5)?event.clientY+document.body.scrollTop:evt.pageY;
}
if(w3c){
document.onmousemove=trackmouse;
}
</script>
</head>
<body onLoad="InitBulle('blue','yellow','red',2)">
<div id='bulle' style='position:absolute;top:0;left:0;visibility:hidden'>-</div>
<span class="bulle" onMouseOut="HideBulle()" onMouseOver="AffBulle('texte affiché')"> kjjkkkjjkm</span>
</body>
<html>
<head>
<style>
.bulle {
color: #025DB3;
//font-weight:bold;
}
</style>
<script language='javascript' type="text/javascript">
var w3c =(document.getElementById)? true: false;
var IE = (document.all) ? true : false;
var ie5=(w3c && document.all)? true : false;
var mx,my;
var IB=new Object;
var xOffset=15;yOffset=45;
function AffBulle(texte)
{
//getMousePos();
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>";
var finalPosX=mx + xOffset;
if (finalPosX<0) finalPosX=0;
var finalPosY=my - yOffset;
if (finalPosY<0) finalPosY=30;
document.getElementById("bulle").innerHTML=contenu;
document.getElementById("bulle").style.top=finalPosY;
document.getElementById("bulle").style.left=finalPosX;
document.getElementById("bulle").style.visibility="visible";
}
function getMousePos()
{
alert(mx + " " + my);
}
function HideBulle()
{
document.getElementById("bulle").style.visibility="hidden";
}
function InitBulle(ColTexte,ColFond,ColContour,NbPixel)
{
IB.ColTexte = ColTexte;
IB.ColFond = ColFond;
IB.ColContour = ColContour;
IB.NbPixel = NbPixel;
}
function trackmouse(evt){
mx=(ie5)?event.clientX+document.body.scrollLeft:evt.pageX;
my=(ie5)?event.clientY+document.body.scrollTop:evt.pageY;
}
if(w3c){
document.onmousemove=trackmouse;
}
</script>
</head>
<body onLoad="InitBulle('blue','yellow','red',2)">
<div id='bulle' style='position:absolute;top:0;left:0;visibility:hidden'>-</div>
<span class="bulle" onMouseOut="HideBulle()" onMouseOver="AffBulle('texte affiché')"> kjjkkkjjkm</span>
</body>