offsetTop vs. jQuery.offset (). top

Я читал, что offsetLeft и offsetTop не работают должным образом во всех браузерах. jQuery.offset () должен предоставить абстракцию для этого, чтобы предоставить правильное значение xbrowser.

Я пытаюсь получить координаты места щелчка по элементу относительно верхней части экрана. слева от элемента.

Проблема в том, что jQuery.offset (). top фактически дает мне десятичное значение в FFX 3.6 (в IE и Chrome эти два значения совпадают).

Это скрипка демонстрирует проблему. Если щелкнуть нижнее изображение, jQuery.offset (). Top вернет 327,5, но offsetTop вернет 328.

Я хотел бы думать, что offset () возвращает правильное значение, и я должен использовать его, потому что он будет работать во всех браузерах. Однако люди явно не могут щелкнуть десятичные дроби пикселей. Правильный ли способ определить истинное смещение для Math.round () смещения, которое возвращает jQuery? Должен ли я использовать вместо него offsetTop или какой-то другой метод?

75
задан FZs 9 July 2019 в 21:05
поделиться