11486 sujets

JavaScript, DOM et API Web HTML5

bonjour,

je fais des expérimentations en manipulant les méthodes offset() et position() de jQuery et je me rends compte que offset() ne prend pas en compte le margin éventuel de l'élément auquel il est appliqué alors que position() lui tient compte de cette marge, et ce n'est pas spécifié dans la documentation jQuery, c'est pas bizarre ça???
Bonjour Lionel,

Effectivement comme le montre cette petite page de test, ces deux méthodes ne fonctionnent pas de manière identique, je ne pense pas qu'il y ait de raison valable.

Un ticket a été ouvert sur le site jQuery il y a 3 ans, mais a été fermé et invalidé assez rapidement avec une excuse que je considère comme bidon.

i.e. parce que ça ne renvoie pas la même information (et ça on le sait), les gars considèrent que l'on ne peut pas comparer leur méthode de calcul... Smiley fache

J'ai bien envie de laisser également un message, mais je ne sais pas si ça va faire avancer le schmilblick... Donc je pense qu'il faudra se résoudre à accepter cette spécificité.

EDIT: malgré tout, dans la documentation, on peut lire une note sur les DEUX méthodes :
jQuery a écrit :
jQuery does not support getting the offset/position coordinates of hidden elements or accounting for borders, margins, or padding set on the body element.

Alors que sur le principe c'est faux pour l'offset() !
Modifié par SolidSnake (27 Mar 2015 - 10:26)