我有以下功能,只有在点击按钮时才会向下滚动页面
function scrollToHome(){
if (window.innerHeight = 123){
for(i=0; i<=123; i++){
window.scrollBy(0, i);
}
}
}
var myInterval = setInterval (scrollToHome, 1000);
homeButton.addEventListener("click", myInterval);
clearInterval(myInterval);
事情是,在保存代码时,函数会自动开始无限执行。
答案 0 :(得分:1)
你必须在一个函数中包装你的间隔。
var myInterval = null;
function scrollToHome(){
if (window.innerHeight = 123){
for(i=0; i<=123; i++){
window.scrollBy(0, i);
}
}
if (condition && myInterval) clearInterval(myInterval);
}
homeButton.addEventListener("click", function () {
myInterval = setInterval(scrollToHome, 1000);
});