我希望显示一些消息,以便在用户时向用户提供反馈 提供输入或只是与UI交互。
我需要它为我的firefox插件,所以我必须用普通的javascript开发它 而不是jQuery。
我希望显示该消息,但同时只能显示一条消息 时间,所以我需要一些队列来管理收到的消息。过了一段时间 例如3秒消息应消失或消失。
现在我可以向DOM添加消息了。有关如何实现队列的任何建议 以及如何根据时间推送消息?
谢谢!
答案 0 :(得分:4)
Perheps你需要 FIFO(先进先出)
的概念在计划java脚本语言中查看这个简单的例子:
function Queue() {
var data = [];
this.isEmpty = function() {
return (data.length == 0);
};
this.enqueue = function(obj) {
data.push(obj);
};
this.dequeue = function() {
return data.shift();
};
this.peek = function() {
return data[0];
};
this.clear = function() {
data = [];
};
}
答案 1 :(得分:1)
你可以在firefox插件中使用jQuery:
在xul文件中包含一个指向jQuery文件的脚本标记,例如:
<script type="text/javascript" src="chrome://extensionname/content/jquery.js" />
在每个使用jQuery的js函数中,插入以下行:
$jQuizzle = jQuery.noConflict();
在每个jQuery调用中,如果您尝试在当前浏览器窗口中操作文档,则必须将上下文提供为“window.content.document”,如下所示:
$jQuizzle(".myClass", window.content.document).show();
然后你可以使用这个jQuery插件: http://benalman.com/projects/jquery-message-queuing-plugin/
答案 2 :(得分:0)
目前尚不清楚要显示哪种消息。 nsIAlertsService可以显示消息,但我不确定它排队的情况。如果你想要更简单的东西,也许你可以只显示一个自定义的<tooltip>
元素。