Javascript 在不同页面中使用时重新启动JS功能(无止境滚动),以避免累积结果
我有一个无止境滚动JavaScript函数在第一次加载每个页面时可以很好地处理不同的页面 问题:该函数在访问其他页面时再次被调用,导致在单击页面链接时,第二次访问的页面的无休止滚动重复结果(2x),下一次访问的页面重复结果(3x),以此类推,尽管手动刷新每个页面时效果良好 我无法将JS代码从每个视图移动到主布局视图,因为它需要在每个视图中运行其他JS代码 我的问题:如何在访问每个页面时刷新/清除JS函数,使其重新启动?或者我有哪些选择 这是带有分页的每页上的代码:Javascript 在不同页面中使用时重新启动JS功能(无止境滚动),以避免累积结果,javascript,jquery,ruby-on-rails-4,Javascript,Jquery,Ruby On Rails 4,我有一个无止境滚动JavaScript函数在第一次加载每个页面时可以很好地处理不同的页面 问题:该函数在访问其他页面时再次被调用,导致在单击页面链接时,第二次访问的页面的无休止滚动重复结果(2x),下一次访问的页面重复结果(3x),以此类推,尽管手动刷新每个页面时效果良好 我无法将JS代码从每个视图移动到主布局视图,因为它需要在每个视图中运行其他JS代码 我的问题:如何在访问每个页面时刷新/清除JS函数,使其重新启动?或者我有哪些选择 这是带有分页的每页上的代码: $(document).on(
$(document).on('ready page:load', function () {
var isLoading = false;
var num = 2;
if ($('.pagination').length) {
$(window).scroll(function(e) {
var url = $('.pagination .next_page').attr('href');
if (!isLoading) {
if (url && $(window).scrollTop() > $(document).height() - $(window).height() - 1500) {
isLoading = true;
var newUrl = url.replace("page="+num-1, "page="+num);
$('#loader').html('<img src="/assets/gmloader.gif" alt="loading..." />');
setTimeout(function(){isLoading=false},1000);
num++;
return $.getScript(newUrl);
}
}
});
return $(window).scroll();
}
});
$(document).on('ready page:load',function(){
var isLoading=false;
var-num=2;
if($('.pagination').length){
$(窗口)。滚动(功能(e){
var url=$('.pagination.next_page').attr('href');
如果(!isLoading){
如果(url&&$(窗口).scrollTop()>$(文档).height()-$(窗口).height()-1500){
isLoading=true;
var newUrl=url.replace(“page=“+num-1”,page=“+num”);
$('#loader').html('');
setTimeout(函数(){isLoading=false},1000);
num++;
返回$.getScript(newUrl);
}
}
});
返回$(window.scroll();
}
});
我感谢你的帮助