Плагин jQuery scrollTo для перехода на верх страницы в Chrome, но не в Firefox - PullRequest
2 голосов
/ 22 февраля 2011

Я искал это, но я полагал, что решение моей проблемы не работает. Это кажется ужасно тривиальным, учитывая, что я имел дело с более сложными вещами в прошлом, но я не могу понять, что происходит неправильно.

$('.link').click(function(e){
    e.preventDefault();
    $.scrollTo('2000px', 300);
}

этот код в Chrome и Safari переходит в верхнюю часть страницы перед прокруткой 2000 пикселей. Я читал через другие списки, что у них были другие события, которые были проблемой, но это ТОЛЬКО код javascript (за исключением jQuery и scrollTo) на тестовой странице, над которой я работаю.

Ответы [ 3 ]

1 голос
/ 07 апреля 2011

Мне удалось продублировать эту ошибку с помощью jQuery 1.5.1 и jQuery.SCrollTo версии 1.4.2, включив расширение «Снимок экрана (от Google) - Версия: 4.0.1» в бета-версии Google Chrome 11.0.696.34.

Простое отключение этого расширения и обновление страницы привело к тому, что ошибка исчезла при тех же обстоятельствах.

0 голосов
/ 24 февраля 2011
  1. Я тоже сталкиваюсь с этой проблемой в Chrome.
  2. Всякий раз, когда элемент body не имеет видимой горизонтальной полосы прокрутки и когда вы вызываете jquery.scrollTo (someElement), браузер прокручивает себя вверх
  3. Вы можете сделать одно из следующих действий:

    • Убедитесь, что у вас есть полоса прокрутки, прежде чем вызывать scrollTo (). Есть много способов сделать это. Проще всего было бы установить переполнение: прокрутка для элемента body
    • Подождите, пока jquery исправит эту проблему в коде animate () (который в конечном итоге вызывается scrollTo) каким-либо образом

В моем приложении (без горизонтальной полосы прокрутки), когда я попытался отладить анимационный код jQuery, я обнаружил, что всякий раз, когда scrollLeft устанавливается в ноль, вертикальная полоса прокрутки в Chrome перемещается вверх. Надеюсь, это поможет.

0 голосов
/ 22 февраля 2011

Вы пробовали только стандартный javascript window.scrollTo(0,'2000px'), чтобы увидеть, ведет ли он себя так же?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...