如何通过单击取消javascript函数启动的定时重定向
How to cancel a timed redirection started by a javascript function with a click?
我有一个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);
});
相关文章:
- 我的jQuery插件参数没有正确启动,遇到了问题
- chrome扩展:尽管运行了at:documentidle,js脚本还是过早启动
- 从控制器返回后Ajax启动事件激发
- Meteor上的启动页面
- 如何防止网页加载后自动启动功能
- 绑定时将Parsley minlength消息作为选项传递时,未对其进行自定义
- 如何从JavaScriptInterface启动Navigation Drawer
- window.on.scroll事件未启动
- 单击按钮后启动javascript提示
- 在javaservlet doPost方法中启动线程时,无法返回异常消息
- spine.js在启动时填充模型实例
- 如何在所有ng点击事件AngularJS上启动一个方法
- jQuery悬停在没有鼠标悬停的情况下启动
- SignalR客户端启动连接时如何设置用户
- Meteor:在启动时将html注入客户端文件
- Angular UI启动日期选择器问题
- 如何通过单击取消javascript函数启动的定时重定向
- 定时器功能在多次停止和启动时无法正常工作
- 定时功能和用户启动功能之间的冲突
- mvc 5在回发后启动javascript定时器