setInterval() 每次访问页面时触发另一个间隔
setInterval() triggers another interval everytime page is visited
大家好,我正在使用 fullpage.js,我正在尝试使用 setInterval() 在我的主页上制作一个自动滑块。问题是,每次我转到我网站上的另一个页面并 return 回家时,setInterval 会触发另一个间隔,并且滑块会快速而疯狂地移动。
每次访问主页时我都在使用 clearInterval() 但它似乎不起作用,知道如何解决这个问题吗?
谢谢!
window.laytheme.on("newpageshown", function(layoutObj, type, obj){
var myInter
var autoScroll = function() {
jQuery.fn.fullpage.moveSectionDown()
}
if(obj.id === 11){
clearInterval(myInter)
myInter = setInterval(autoScroll, 3500)
}
})
尝试将您的代码更改为 setTimeout,如下所示:
//ensure interval variable are accessible
var myInterval = null;
var autoScroll = function() {
jQuery.fn.fullpage.moveSectionDown()
};
window.laytheme.on("newpageshown", function(layoutObj, type, obj){
if(obj.id === 11){
if(myInterval != null){
clearTimeout(myInterval);
}
myInterval = setTimeout(autoScroll, 3500);
}
});
大家好,我正在使用 fullpage.js,我正在尝试使用 setInterval() 在我的主页上制作一个自动滑块。问题是,每次我转到我网站上的另一个页面并 return 回家时,setInterval 会触发另一个间隔,并且滑块会快速而疯狂地移动。
每次访问主页时我都在使用 clearInterval() 但它似乎不起作用,知道如何解决这个问题吗?
谢谢!
window.laytheme.on("newpageshown", function(layoutObj, type, obj){
var myInter
var autoScroll = function() {
jQuery.fn.fullpage.moveSectionDown()
}
if(obj.id === 11){
clearInterval(myInter)
myInter = setInterval(autoScroll, 3500)
}
})
尝试将您的代码更改为 setTimeout,如下所示:
//ensure interval variable are accessible
var myInterval = null;
var autoScroll = function() {
jQuery.fn.fullpage.moveSectionDown()
};
window.laytheme.on("newpageshown", function(layoutObj, type, obj){
if(obj.id === 11){
if(myInterval != null){
clearTimeout(myInterval);
}
myInterval = setTimeout(autoScroll, 3500);
}
});