我在一个页面上创建一个网站,如幻灯片,这是我的代码和功能jsFiddle
我需要帮助两件事。
1)第二页上的SetTimeout,如果没有人点击任何按钮/链接5秒,它会自动返回到第一页,而不会点击任何按钮/链接。
2)在第三页上,目前有一个“谢谢”标签,我想完全删除该标签,因此它只会是页面上的图像。 3秒后,它应自动返回第一页。
如何在这两个页面上设置setTimeout才能实现上述两个功能?任何帮助表示赞赏。
谢谢!
答案 0 :(得分:3)
如果您将此代码添加到a.panel
click
事件处理程序的开头,您的超时将会生效:
//cache all the `a.panel` elements and setup a timer for our `setTimeout`s
var $panels = $('a.panel'),
timer = null;
//add click event handlers to all the `a.panel` links
$panels.click(function () {
//clear our timer so we don't get redirected back to `#item1` after clicking a link in a timely manor
clearTimeout(timer);
timer = null;
//cache the value of `$(this)` since we will use it more than once
var $this = $(this);
//check if we just clicked the link to the second page
if ($this.attr('href') == '#item2') {
//set a timer to return to the first page after five seconds of inactivity
timer = setTimeout(function () {
$panels.filter('[href="#item1"]').trigger('click');
}, 5000);
//check if we just clicked the link to the third page
} else if ($this.attr('href') == '#item3') {
//set a timer to return to the first page after three seconds of inactivity
timer = setTimeout(function () {
$panels.filter('[href="#item1"]').trigger('click');
}, 3000);
}