cs_jeanmarc1234
Messages postés11Date d'inscriptionsamedi 25 novembre 2006StatutMembreDernière intervention 9 décembre 2008
-
31 mai 2008 à 08:07
cs_jeanmarc1234
Messages postés11Date d'inscriptionsamedi 25 novembre 2006StatutMembreDernière intervention 9 décembre 2008
-
31 mai 2008 à 09:00
Bonjour,
Avant toute chose je code en aspx mais j'ai du récupérer un script qui permet de charger une image dans un infobulle.
Sur Mozilla aucun souci le problème viens de IE je m'explique.
Sur une page sans masterpage IE répond correctement, par contre si j'utilise un masterpage l'infobulle se décalle.
Pour comprendre mieux le problème voici les liens test.
var leftedge = (xOffset < 0) ? xOffset*(-1) : -1000
// modifier la largeur de l'objet s'il est trop grand...
if(laBulle.offsetWidth > winwidth / 3){
laBulle.style.width = winwidth / 3
}
// si la largeur horizontale n'est pas assez grande pour l'info bulle
if(rightedge < laBulle.offsetWidth){
// bouge la position horizontale de sa largeur à gauche
laBulle.style.left = curX - laBulle.offsetWidth + "px"
} else {
if(curX < leftedge){
laBulle.style.left = "5px"
} else{
// la position horizontale de la souris
laBulle.style.left = curX + xOffset + "px"
}
}
// même chose avec la verticale
if(bottomedge < laBulle.offsetHeight){
laBulle.style.top = curY - laBulle.offsetHeight - yOffset + "px"
} else {
laBulle.style.top = curY + yOffset + "px"
}
}
}
function showTooltip(text) {
if (w3c||ie){
laBulle = document.all ? document.all["bulle"] : document.getElementById ? document.getElementById("bulle") : ""
laBulle.innerHTML = text; // fixe le texte dans l'infobulle
laBulle.style.visibility = "visible"; // Si il est cachée (la verif n'est qu'une securité) on le rend visible.
affiche = true;
}
}
function hideTooltip() {
if (w3c||ie){
affiche = false
laBulle.style.visibility="hidden" // avoid the IE6 cache optimisation with hidden blocks
laBulle.style.top = '-100000px'
laBulle.style.backgroundColor = ''
laBulle.style.width = ''
}
}
document.onmousemove = deplacer; // des que la souris bouge, on appelle la fonction move pour mettre a jour la position de la bulle.
[\CODE]
PetoleTeam
Messages postés3426Date d'inscriptionlundi 26 décembre 2005StatutMembreDernière intervention14 janvier 201117 31 mai 2008 à 08:56
Après un frugal petit déjeuner et une analyse du
script il te faut remplacer...
var curX = (w3c) ? e.pageX : event. x +
ietruebody().scrollLeft;
var curY = (w3c) ? e.pageY : event.y + ietruebody().scrollTop;
par
var curX = (w3c) ? e.pageX : event. clientX + ietruebody().scrollLeft;
var curY =
(w3c) ? e.pageY : event.clientY +
ietruebody().scrollTop;