我创建了一个方法,让用户等待一段时间。(等待窗口)
function hideMe()
{
document.getElementById('rotate').style.visibility= "hidden";
}
function showMe()
{
document.getElementById('rotate').style.visibility= "visible";
}
function wait()
{
showMe();
setTimeout(hideMe, 2000); // To show certain window for 2 seconds
}
但窗口只是闪烁,即使我增加了更长的时间。它没有太大的改善。
为什么?
替代方法是什么
对不起,我不能在这个项目中使用jQuery。
更新很抱歉我使用visibility
而不是display
,但它仍然无法工作。我发现我会在命令wait()
之后向服务器发送一些请求,这会影响setTimeout()
。
类似:
wait();
httpReq();
如果我添加alert("after wait()")
类似:
wait();
alert("after");
wait()
之后不会执行警报;
在代码中使用
document.getElementById('rotate').style.display= "visible";
其中显示不具有"可见"属性。您必须使用"block"或"inline"。也可以将display属性设置为空。
document.getElementById('rotate').style.display= "";
检查这是否有帮助。根据OP的意见
setTimeout不是同步命令。如果您希望在执行setTimeout之后执行某些内容。您必须将其添加到setTimeout函数中。例如
setTimeout(function(){hideMe();alert("test");}, 2000);