【发布时间】:2013-07-15 09:20:08
【问题描述】:
我正在努力展示一条本质上会自我否定的信息。 5 秒后,消息栏自行消失。但是,当显示多条消息时,一旦显示的消息栏被关闭,行为就是在同一个容器中显示多条消息。
为此, 一旦我显示带有第一条消息的栏,这是 5 秒后自动关闭的代码
window.setTimeout(function () {
bar.getValue('isVisible').setValue(false);
this.clearMessage(bar);// clears the message
bar._isShowing = false;
setTimeout(function() {
//execute the last action in the queue (if any)
dequeueAction(); fires the next message in queue.
}, 100);
}, 3000);
我的问题是,当在第一条消息自行解除之前触发了另一条消息时,我正在排队。但是,我希望在关闭第一条消息和显示队列中的第二条消息之间有相当长的延迟。但是延迟显示第二条消息的超时不起作用,因为它已经在 3000 毫秒的时间内
如何延迟关闭第一条消息并显示第二条消息? 注意:它可以在没有第二个 setTimeout 的情况下工作,但没有延迟。
我们将不胜感激。
【问题讨论】:
-
这不是 3000 秒,是 3000 毫秒,只有 3 秒。
-
是的,我明白了。那是一个错字。
-
别担心,只是检查一下。
-
我不明白确切的问题 - 它应该像这样正常工作,因为您可以在 Javascript 中使用嵌套函数。你能描述一下它现在不工作的方式吗?
-
听起来
bar._isShowing = false;放错地方了。你能告诉我们整个函数吗?
标签: javascript settimeout