我之前曾尝试过针对类似问题的解决方案,但这些解决方案无法满足我的目的 这是我的按钮
<a class="goto-next-slide overlay-button overlay-right" id="nxt">Next</a>
这是我执行点击操作的javascrit函数
function gotoNextSlide() {
goToSlide(getCurrentSlide().index() + 1);
}
现在,仅当我单击按钮时才发生该事件,但是当60秒后自动单击下一个按钮时,我应该怎么做才能执行操作。
这是我的jQuery,我在其中调用gotoNextSlide()
函数。
function init() {
$("#nxt").click(gotoNextSlide);
}
$(document).ready(init);
我该怎么办?
我尝试过这种方法
<script>
var tmp;
function f1() {
tmp = setTimeout("(gotoNextSlide)", 2000);
}
function callNext() {
document.getElementById("nxt").click();
}
</script>
答案 0 :(得分:1)
使用setTimeout在60秒后将goToNextSlide排队。每当有人单击“下一步”按钮或经过60秒时,请清除超时,更改幻灯片,然后在60秒后再次排队。
var timer;
function gotoNextSlide() {
timer && clearTimeout(timer);
goToSlide(getCurrentSlide().index() + 1);
timer = setTimeout(gotoNextSlide, 1000 * 60);
}
function init() {
$("#nxt").click(gotoNextSlide);
timer = setTimeout(gotoNextSlide, 1000 * 60);
}
$(document).ready(init);