我有一个 setInterval
,它选择一个输入,然后通过单击操作提交表单。现在我的问题是我的函数点击按钮的次数太多了。我尝试添加一个 bool 值来检查它是否被点击。没有骰子,页面将无法加载。由于某些奇怪的原因,提交按钮有时不起作用。我需要将间隔设置为 100 - 1000,以防页面超时或滞后。
如何检查以确保它在页面尝试加载时不会再次点击?如果间隔大于 1000,代码可以正常工作,但我需要速度。
var pickSize = setInterval(function(){
if (window.location.href.indexOf('/website/') == -1 && window.location.href.indexOf('/page.php') == -1) {
if ($('input[value="236"]').attr("checked", true)) {
$('.Add').click();
}
}
}, 1000);
最佳答案
您可以使用onbeforeunload
事件来检查页面是否已经开始导航到另一个页面:
var interval = setInterval(function(){
if(window.location.href.indexOf("/website/") == -1 && window.location.href.indexOf("/page.php") == -1) {
if($('input[value="236"]').attr("checked", true)) {
$('.Add').click();
}
}
}, 1000);
window.addEventListener('beforeunload', function() {
clearInterval(interval);
console.log('Started to navigate away...');
});
但是,您似乎需要解决原因,而不是后果。将您的 HTML 和 JS 发布到另一个问题中,例如“为什么我的表单有时只提交?”让我们尝试了解原因。这肯定是出于某种原因发生的:)
关于javascript - 检查页面是否正在用 JavaScript 加载?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33685374/