据我所知,JS代码是逐行执行的。为什么然后在alert
之前执行hide
下面的代码?
$(document).ready(function(){
$("button").click(function(){
$("p").hide();
alert("The paragraph is now hidden");
});
});
答案 0 :(得分:1)
这是因为DOM操作通常有点沉重,并且在执行上述事件循环中的所有语句之后呈现。
正如@Pointy正确提到的那样,只有在执行注册语句之后才会呈现布局。
答案 1 :(得分:0)
在hide()
之后执行。 hide()
注册将在命令完成后执行的DOM更改。您可以在alert
之前等待一点:
$(document).ready(function(){
$("button").click(function(){
$("p").hide();
setTimeout(function() {
alert("The paragraph is now hidden");
}, 100);
});
});