这是一个简化的示例,以确保不涉及异步淡入淡出/动画功能。
我想要,当工作量大的功能工作时背景是红色的,当它准备好时变成黑色。实际发生的是,大多数时候背景会在函数准备好后直接变成黑色。哟不会看到红色背景,即使您正在等待“完成”被提醒。
有没有更好的解决方案,然后用 setTimeout 等待几毫秒,以便背景变为红色。直接调用 work() 会产生问题。
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
<head>
<title>Test</title>
<script type='text/javascript'>
function work()
{
var i, a;
a = [];
for(i = 0; i < 250000; i++)
{
a.push(Math.random());
}
a.sort();
document.getElementsByTagName('body')[0].style.background = '#000000';
alert('done');
return true;
}
window.onload = function() {
document.getElementsByTagName('body')[0].style.background = '#ff0000';
//work();
setTimeout(work, 100);
};
</script>
</head>
<body>
<h1>Test</h1>
</body>
</html>