2009-06-25 9 views
1

Bonjour à tous.Firefox: Obtenir les coordonnées de la souris du coin supérieur gauche de la fenêtre

Je travaille sur une extension Firefox, et je veux faire apparaître une info-bulle à un certain décalage du curseur de la souris. Cependant, le problème survient lorsque ce décalage est hors de la fenêtre. Il est affiché mais l'utilisateur devra faire défiler les pages. J'espère améliorer cela en déplaçant l'info-bulle pop-up dans la fenêtre courante.

Cependant, un problème se pose parce que le seul indice que j'ai à l'endroit où je suis dans le document est la position de la souris. Une solution partielle serait de calculer combien de déplacer mon infobulle en découvrant si la souris actuelle coordonnée + l'info-bulle largeur/hauteur et voir si elle dépassera window.innerHeight ou window.innerWidth.

Cependant, je viens de réaliser que si elle était un document très long et l'utilisateur un peu défiler vers le bas juste, la souris coordonnée aurait une valeur y très grande. Par conséquent, je ne peux pas compter uniquement sur window.innerHeight pour voir si je suis toujours dans la fenêtre d'affichage. Quelqu'un a trouvé un moyen de trouver la coordonnée de la souris dans le coin supérieur gauche de la fenêtre si l'utilisateur a beaucoup défilé?

Merci d'avance! =)

Répondre

2

Plus spécifiquement dans votre cas, document.body.scrollTop.

Cependant, c'est assez IE spécifique, qui contrecarre le but de la plupart des extensions FireFox. ;-) Il y a aussi des dépendances DTD à démarrer.

Cela ressemble à ce que vous voulez: Determining browser dimensions and document scroll offsets

+0

J'ai vu la réponse ci-dessus avant d'aller au lit la nuit dernière et j'ai essayé de l'expérimenter. Cependant, il est trop tôt le matin et je me suis endormi avant de pouvoir répondre. Je tentais d'obtenir la valeur scrollTop mais pour une raison inconnue, il a toujours retourné zéro. window.pageXOffset et window.pageYOffset frappé le clou directement dans la tête. Merci beaucoup! =) J'ai appris quelque chose de nouveau. Je suis heureux et je le remettrais deux fois si je le pouvais. – wai

1

Je pense que vous cherchez quelque chose comme le scrollTop propriété:

scrollTop obtient ou définit le nombre de pixels que le contenu d'un élément défile vers le haut.

+0

Merci pour l'indice. Va enquêter plus loin. – wai

0

@WAI - Eh bien ce que vous avez dit est correct, mais vous devez utiliser précisément ce qui suit si vous travaillez pour l'extension Firefox:

window.content.pageXOffset 

OU

window.content.pageYOffset 
Questions connexes