这里是 jsFiddle 链接: https://jsfiddle.net/67kaphgu/
$(document).ready(function(){
$("DIV").css("background-color","red");
confirm("Background not yet changed");
});
简而言之,我想强调一些元素并在继续进行之前请求确认。但是在
confirm()
调用返回后,该元素会更改其样式。这里是 jsFiddle 链接: https://jsfiddle.net/67kaphgu/
$(document).ready(function(){
$("DIV").css("background-color","red");
confirm("Background not yet changed");
});
confirm()
调用返回后,该元素会更改其样式。confirm()
调用阻塞了UI线程的更新。解决方法是将confirm()
调用放入一个带有非常短延迟的setTimeout()
中:$(document).ready(function(){
$("div").css("background-color", "red");
setTimeout(function() {
confirm("Background not yet changed");
}, 50);
});
另一种选择是使用一个库,将 confirm()
对话框替换为模态框,这样 UI 就可以在任何时候更新。