我有一些jquery超时功能,但我认为我犯了一些语法错误,有人能纠正我,我做错了
我想滚动页面后5秒,但如果用户点击按钮,我不想滚动,这是我现在有什么,它是OK的,当用户点击,但我不知道如何防止另一个滚动?下面是我的示例代码
$(document).ready(function () {
var clickScroll = 0;
$('.jumper').click(function () {
clickScroll = clickScroll + 1;
$('html, body').animate({
scrollTop: $(".section-one-home").offset().top - 98
}, 2000);
});
if (clickScroll == 0) {
setTimeout(function () {
$('html, body').animate({ scrollTop: $(".section-one-home").offset().top - 500 }, 2000);
}, 5000);
}
});
任何建议吗?
您可以使用clearTimeout
来取消setTimeout
中的功能,如下所示:
$(document).ready(function () {
var clickScroll;
clickScroll = setTimeout(function () {
$('html, body').animate({ scrollTop: $(".section-one-home").offset().top - 500 }, 2000);
}, 5000);
$('.jumper').click(function () {
clearTimeout(clickScroll);
$('html, body').animate({
scrollTop: $(".section-one-home").offset().top - 98
}, 2000);
});
});