Jquery 当元素停止存在时,如何停止间隔?
当元素停止存在时,如何停止间隔 这是我的代码,我就是无法让它工作:Jquery 当元素停止存在时,如何停止间隔?,jquery,clearinterval,Jquery,Clearinterval,当元素停止存在时,如何停止间隔 这是我的代码,我就是无法让它工作: var AmLoadMoreButton = $('.amscroll-load-button'); var TopSearch = $('#textSearch'); var isDisabled = TopSearch.prop('disabled'); window.setInterval(function(){
var AmLoadMoreButton = $('.amscroll-load-button');
var TopSearch = $('#textSearch');
var isDisabled = TopSearch.prop('disabled');
window.setInterval(function(){
if(AmLoadMoreButton.length){
LoadMoreProducts();
console.log("Load more still exists");
} else {
console.log("that's all, stop now");
StopLoadingProducts();
}
}, 1000);
function LoadMoreProducts(){
if(!isDisabled){
TopSearch.prop( "disabled", true );
$('#amasty-shopby-product-list').on("click", ".amscroll-load-button", function(){});
$('.amscroll-load-button').trigger('click');
}
}
function StopLoadingProducts(){
console.log("No more products to load");
TopSearch.prop( "disabled", false );
clearInterval();
}
你就是这样停止间歇的吗?从未调用“StopLoadingProducts()”函数。控制台上没有任何记录,更不用说停止间隔了。试试这段代码
var AmLoadMoreButton=$('.amscroll load button');
var TopSearch=$(“#textSearch”);
var isDisabled=TopSearch.prop('disabled');
var refreshIntervalId=window.setInterval(函数(){
if(AmLoadMoreButton.length){
loadmore产品();
log(“加载更多仍然存在”);
}否则{
log(“就这些,现在停止”);
停止加载产品();
}
}, 1000);
函数LoadMoreProducts(){
如果(!isDisabled){
TopSearch.道具(“禁用”,正确);
$(“#amasty shopby产品列表”)。在(“单击“,”.amscroll加载按钮”,函数(){});
$('.amscroll加载按钮')。触发器('click');
}
}
函数StopLoadingProducts(){
log(“没有更多要加载的产品”);
TopSearch.道具(“禁用”,错误);
clearInterval(refreshIntervalId);
}
尝试将间隔设置为一个值,然后将该值传递给clearInterval
这是否回答了您的问题?