Reputation: 41595
In order to load pages as facebook or twitter does at their sites, scrolling down, i have tried this with jquery:
$(window).scroll(function(){
if ($(window).scrollTop() == $(document).height() - $(window).height()){
//do something
}
}
And i am having troubles with Firefox. Not with Chrome and either with Safari (IE not tested yet).
If i use an "alert('xx')" inside the IF, Firefox crashes and i have to restart it.
I am using the Mac version of Firefox but i guess that's not an important fact.
Anyone have any idea about what's happening here? Thanks.
Upvotes: 7
Views: 26273
Reputation: 41
I know this is an really old article, but i was struggling with this today. I was trying to active an counter when it came into my viewport. It stopped working after i added some style to my style.css.
html {
scroll-behaviour: smooth
}
So, may this be in you favour, adding this will cause $(window).scroll function stop working on firefox and IE.
Upvotes: 4
Reputation: 8023
I have the same problem: it works in chrome but not in firefox and IE. After debugging i found that there is a 1 px difference between $(document).height() - $(window).height() and $(window).scrollTop() in firefox but not in chrome. My working solution here:
if ($(window).scrollTop() + 1 >= $(document).height() - $(window).height()){
//do something here
}
Upvotes: 8
Reputation: 3513
I had a similar problem occurring because I had put a Firebug breakpoint inside the scroll handler, not an alert()
. I instead used a console.log()
for debugging, and that did not cause crashing.
Upvotes: 0
Reputation: 75993
The scroll
event is firing so many times that your Firefox browser is crashing. Instead of using alert()
, use console.log()
...
Here is a demo to show how many events are fired: http://jsfiddle.net/jasper/tQmRU/
Upvotes: 2