JavaScript没有在正确的位置休眠
我有个小问题。在我的主页上我有一个按钮。此按钮通过onclick调用函数(onclick=“showhidelogin()”) 函数如下所示:JavaScript没有在正确的位置休眠,javascript,sleep,Javascript,Sleep,我有个小问题。在我的主页上我有一个按钮。此按钮通过onclick调用函数(onclick=“showhidelogin()”) 函数如下所示: function showhidelogin() { document.getElementById("null").id = "menu-sticky"; sleep(1000); document.getElementById("loginform").id = "loginformview"; } 为什么页面像第一个一样
function showhidelogin() {
document.getElementById("null").id = "menu-sticky";
sleep(1000);
document.getElementById("loginform").id = "loginformview";
}
为什么页面像第一个一样等待,然后执行两个“getElementById”-语句?
(setTimeout也不起作用)Javascript中没有
sleep
函数。必须使用setTimeout
执行此操作
function showhidelogin() {
document.getElementById("null").id = "menu-sticky";
setTimeout(function () {
document.getElementById("loginform").id = "loginformview";
}, 1000);
}
对Ananth答案的改进(检查
getElementById()
是否返回内容):
JavaScript
中没有睡眠功能。您是否使用任何库?您是否可以共享可执行的演示/代码片段或?你想达到什么目的?我认为OP没有以正确的方式使用setTimeout。。setTimeout怎么可能不起作用呢?我们的假设应该是评论的一部分。。OP没有使用DOM
,预期的输出似乎不一样…@Ananth好吧,任何函数都可以使用,使其不能以预期的方式工作。例如,OP的脚本顶部可能有setTimeout='wtf'
。)为什么OP正在更改id
属性tho?
function showhidelogin() {
if(document.getElementById("null")) {
document.getElementById("null").id = "menu-sticky";
}
setTimeout(function () {
if (document.getElementById("loginform")) {
document.getElementById("loginform").id = "loginformview";
}
}, 1000);
}