我有一个 javascript 定时重定向功能与以下代码一起正常工作,如果(且仅当)用户在页面自动重定向之前的等待期间单击站点中的任何位置,我希望取消此功能;
<script type="text/JavaScript">
<!--
setTimeout("location.href = 'http://www.myurl.html';",30000);
-->
</script>
我应该使用什么代码以及在哪里使用?谢谢!!
我有一个 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';
}
Assuming you're using jQuery:
var timeout = setTimeout(function(){
location.href = 'http://www.myurl.html';
},30000);
$("body").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>
在 JavaScript 中:
var timeout = setTimeout("location.href = 'http://www.myurl.html';", 30000);
window.onclick= function () {
clearTimeout(timeout);
}
注意:Fiddle 会在重定向时出错(因为 fiddle 在加载其他一些 url 时出现问题)。它工作正常..试试
Jquery让你的任务变得超级简单:
var timeout = setTimeout(function () {
location.href = 'http://www.myurl.html';
}, 30000);
$("*").click(function () {
clearTimeout(timeout);
});