我有一个javascript定时重定向功能,可以正确地使用以下代码,如果(并且只有当)用户在等待期间点击了网站中的任何位置,然后页面自动重定向,我希望取消这个功能;
<script type="text/JavaScript">
<!--
setTimeout("location.href = 'http://www.myurl.html';",30000);
-->
</script>
我应该使用什么代码,在哪里?谢谢
您应该将变量设为全局变量,这样您就可以在任何需要的地方停止它。
var redirect = setTimeout(redirection, 30000);
document.body.onclick = function() {
clearTimeout(redirect);
}
function redirecton() {
location.href = 'http://www.myurl.html';
}
在javascript:中
var timeout = setTimeout("location.href = 'http://www.myurl.html';", 30000);
window.onclick= function () {
clearTimeout(timeout);
}
工作FIDDLE
注意:Fiddle会在重定向时出错(因为Fiddle在加载其他URL时遇到了一些问题)。它工作正常。。试试
Jquery让您的任务变得超级简单:
var timeout = setTimeout(function () {
location.href = 'http://www.myurl.html';
}, 30000);
$("*").click(function () {
clearTimeout(timeout);
});
使用window.clearTimeout
停止。
<script type="text/JavaScript">
var timeoutId = setTimeout("location.href = 'http://www.myurl.html';",30000);
// for some element x
x.onclick = function(){
clearTimeout(timeoutId);
}
</script>
假设您使用的是jQuery:
var timeout = setTimeout(function(){
location.href = 'http://www.myurl.html';
},30000);
$("body").click(function(){
clearTimeout(timeout);
});