Javascript 我能';t清除间隔
我的时间间隔有问题,在使用值调用函数后无法清除 间隔将继续增加数字并返回宽度的百分比 这是我的代码:Javascript 我能';t清除间隔,javascript,Javascript,我的时间间隔有问题,在使用值调用函数后无法清除 间隔将继续增加数字并返回宽度的百分比 这是我的代码: function loadingClient(data) { var loadingClientDiv = document.getElementById('loadingClient'); var percentageLoading = document.getElementsByClassName('percentageLoading'); var charge =
function loadingClient(data) {
var loadingClientDiv = document.getElementById('loadingClient');
var percentageLoading = document.getElementsByClassName('percentageLoading');
var charge = 1;
var intervalLoadingClient = setInterval(barCharge, 1000);
function barCharge() {
if (charge >= 76) {
clearInterval(intervalLoadingClient);
} else {
++charge;
$(percentageLoading).css("width", charge + "%");
}
}
if (data === "100") {
clearInterval(intervalLoadingClient);
$(percentageLoading).css("width", "100%");
setTimeout(closeLoadingClient, 5000);
setTimeout(removeLoadingClient, 7000);
function closeLoadingClient() {
$(loadingClientDiv).hide("fade", 1000);
}
function removeLoadingClient() {
$(loadingClientDiv).remove();
}
}
}
loadingClient();
@hudolfhess是正确的,您需要使用clearInterval而不是clearTimeout 而且 如果你想做这样的事情,那是行不通的
loadingClient()//应启动间隔。
loadingClient(“100”)//应清除间隔,但不清除代码>间隔
!==<代码>超时
。您正在清除或设置错误的内容。@deceze setInterval和setTimeout返回来自同一池的ID,您可以在任何setXxx上调用任何clearXxx,它们不查看类型。