2014-10-31 2 views
2

Я использую эту функцию для загрузки веб-страницы в кусках для уменьшения времени загрузки страницы на главной странице.jQuery scrollTop() не работает в Safari

Это прекрасно работает в браузере Chrome и UC. Только проблема входит в браузер Safari.

Это мой код:

if($(window).scrollTop() + $(window).height() == $(document).height()) //user scrolled to bottom of the page? 
     { 
} 

, когда я иду, чтобы предупредить что-то внутри цикла его также не работает в Iphone. Направляйте меня туда, где я делаю что-то неправильно.

Спасибо.

ответ

4

Я помню, что у сафари есть проблема с высотой окна jquerys. попробуйте window.innerHeight вместо этого.
Так что ваш код будет выглядеть так

if($(window).scrollTop() + window.innerHeight == $(document).height()) { 
    alert('bottom') 
} 
+0

Mephiztopheles: nice..can я также проверить, что свиток просто маленький выше от bottom.so, что загрузчик будет вызывать до того свитка прикосновения к нижней части. –

+0

это было бы как '$ (window) .scrollTop() + window.innerHeight> = $ (document) .height() - BUFFER' ... я надеюсь, что так: D не проверял, но он должен быть таким, как этот EDIT : вам нужно '> =', потому что вы не можете точно прокрутить значение ... поэтому ваша функция будет срабатывать при прокрутке. Каждое событие прокрутки ... помните, что – Mephiztopheles

+0

Я пробовал, но не работал. –

Смежные вопросы