#javascript #jquery
#javascript #jquery — jquery — запрос #jquery
Вопрос:
В чем разница между:
window.scroll(0,200);
И
$(window).scrollTop(200);
Помимо того факта, что один из них использует jQuery, а другой нет, в чем разница? Один анимирует прокрутку, а другой нет? Будет ли одно работать быстрее другого?
Комментарии:
1.Судя по этой строке,
$.fn.scrollTop
по сути, сопоставляется сwindow.scrollTo
, что по сути то же самое, чтоwindow.scroll
. Это отвечает на ваш вопрос? )2. Что касается производительности, то здесь применяются обычные соображения —
window.scroll
очевидно, что это быстрее (поскольку другой метод вызовет его после нескольких проверок, вызовов функций и создания объекта), но разница будет незначительной.3. @raina77ow извините, не хотел красть ваш ответ, я не видел ваших комментариев перед ответом
Ответ №1:
.scrollTo() или .scroll() применимы к объекту window, в то время как .scrollTop() работает с любым элементом DOM
Ответ №2:
scrollTop
кажется, использует window.scrollTo
:http://james.padolsey.com/jquery/#v=1.10.2amp;fn=jQuery.fn.scrollTop
Очевидно, что с точки зрения производительности решение на чистом js работает быстрее, но в большинстве случаев это не должно иметь большого значения: http://jsperf.com/js-vs-jquery-scroll
Похоже, что между window.scroll
и window.scrollTo
нет никаких различий в производительности.
Ответ №3:
Метод jQuery scrollTop() — возвращает вертикальное положение полосы прокрутки для HTML-элемента JavaScript window.метод scroll(x-coord,y-coord) прокручивает окно до определенного места в документе. Window.scrollTo фактически такой же, как этот метод.
Комментарии:
1. Есть средство получения и средство установки для
jQuery.scrollTop