setTimeout()函数显示错误的值

时间:2015-11-19 13:09:09

标签: javascript jquery html svg

在我的JavaScript代码中,在 setTimeout()内,变量btnIdValue的值不会改变。它显示恒定值 0 。当这遍历循环时,值应该是在改变。 btnIdValue的最小值设置为1.

$('#clearBtn').click(function(){
    btnIdValue = $('#inputTxtBx').val();
    while( btnIdValue > 0  ){
        setTimeout(function() {
            alert(["#circle",btnIdValue].join(''));
            $(["#circle",btnIdValue].join('')).remove();
            $(["#button",btnIdValue].join('')).remove();
        }, 1000);
        alert(btnIdValue);
        btnIdValue--;
    }
});

我正在尝试删除 id 的元素。当我发布硬编码值时,它可以工作。

$("#circle1").remove();
$("#button").remove();

我在循环中尝试了下面的部分,但它删除了没有所需延迟的所有元素并删除了效果。

$(["#", btnIdValue].join('')).delay(1000).fadeOut(1000, function(){
    $(this).remove();
}); 

0 个答案:

没有答案