Jquery 设置重新加载php页面的间隔,除非单击“编辑”按钮
现在我在jquery中有一个interval函数,每隔几秒钟重新加载一页:Jquery 设置重新加载php页面的间隔,除非单击“编辑”按钮,jquery,Jquery,现在我在jquery中有一个interval函数,每隔几秒钟重新加载一页: setInterval(function () { $('div#tab2').load('morefour.php?doc=' + encodeURIComponent(ktitle)); }, 3000); }); 我现在真正想做的是,如果单击此输入: <input type='image' class='edit' src='edit.png'> 停止setinterval函数。setinterv
setInterval(function () {
$('div#tab2').load('morefour.php?doc=' + encodeURIComponent(ktitle));
}, 3000);
});
我现在真正想做的是,如果单击此输入:
<input type='image' class='edit' src='edit.png'>
停止setinterval函数。setinterval返回一个句柄,可与clearInterval一起使用以取消它。句柄将是一个大于零的数字
因此,保存setInterval调用中的句柄:
…然后在按下按钮时使用它来取消:
$("input.edit").click(function() {
if (handle) {
clearInterval(handle);
handle = 0;
}
});
还要注意,在上面的第一个片段中,我已经将interval参数3000移动到Jared指出的应该加载的位置,您将它作为第二个参数加载,当然它应该是setInterval的第二个参数。setInterval返回一个句柄,您可以使用clearInterval来取消它。句柄将是一个大于零的数字
因此,保存setInterval调用中的句柄:
…然后在按下按钮时使用它来取消:
$("input.edit").click(function() {
if (handle) {
clearInterval(handle);
handle = 0;
}
});
还要注意,在上面的第一个片段中,我已经将interval参数3000移动到了Jared指出的位置,您将它作为第二个要加载的参数,当然,它应该是setInterval的第二个参数。您可以像这样使用window.clearInterval。您可以像这样使用window.clearInterval。您可以通过使用一个标志来实现这一点:
<script type="text/javascript">
var flag = true;
</script>
并更改图像onclick中的标志:
您可以通过使用标志来执行此操作:
<script type="text/javascript">
var flag = true;
</script>
并更改图像onclick中的标志:
我认为您的代码有问题;似乎不合适。我认为您的代码有问题。尾部};似乎不合适。你没有看到setInterval代码有什么不寻常的地方吗?@Jared:啊,是的,我明白你的意思。嗯,嗯。。。我相信它应该被删除。你没有看到setInterval代码有什么不寻常的地方吗?@Jared:啊,是的,我明白你的意思。嗯,嗯。。。我认为应该删除它。通常认为最好的做法是在答案中包含代码,而不是链接到其他地方。不知道其他网站会持续多久,所以这个答案的效用最终可能会变得无用好的,我会为我未来的帖子做这件事。我是新来的:通常认为最好的做法是在答案中包含代码,而不是链接到其他地方。不知道其他网站会持续多久,所以这个答案的效用最终可能会变得无用好的,我会为我未来的帖子做这件事。我是新来的:
<input type='image' class='edit' src='edit.png' onclick="javascript:flag=false">