页面加载后,我想每1秒钟检查一次条件,直到它变为true,然后终止该功能。我尝试了以下脚本,简单地将繁重的工作放在页面开始位置。
$(document).ready(function () {
setInterval(function () {
for (var i = 0; i < 1; ) {
if ($(".showPrice").length) {
console.log("yes");
i = 1;
} else {
return false;
}
}
}, 1000);
});
答案 0 :(得分:0)
要清除interval,您需要引用间隔并将其传递给clearInterval()
,只需将其分配给变量即可:
$(document).ready(function () {
let interval = setInterval(function () {
if ($(".showPrice").length) {
clearInterval(interval);
console.log('Cleared!');
}
}, 1000);
setTimeout(function(){
$('.placeholder').html('<div class="showPrice">11.00 $</div>');
}, 3000)
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<body>
<div class="placeholder"></div>
</body>