Javascript 设置属性后如何更新对话窗口?
在我的firefox插件中,我有一个小的非模式窗口,在用户浏览时保持打开状态。插件还有一个工具栏。当按下工具栏上的按钮时,将调用一个函数来设置窗口中某些属性的值 现在,在我的代码中,我可以很好地调用函数,但是窗口永远不会改变 但是,我使用Javascript 设置属性后如何更新对话窗口?,javascript,firefox-addon,Javascript,Firefox Addon,在我的firefox插件中,我有一个小的非模式窗口,在用户浏览时保持打开状态。插件还有一个工具栏。当按下工具栏上的按钮时,将调用一个函数来设置窗口中某些属性的值 现在,在我的代码中,我可以很好地调用函数,但是窗口永远不会改变 但是,我使用onload侦听器调用了相同的函数,它在那里工作得很好。我在函数中添加了一个警报,它确实会被调用,但更改永远不会显示在窗口中 如何确保更改显示在我的窗口上?以下是我的一些示例代码: var windowManager = Components.class
onload
侦听器调用了相同的函数,它在那里工作得很好。我在函数中添加了一个警报
,它确实会被调用,但更改永远不会显示在窗口中
如何确保更改显示在我的窗口上?以下是我的一些示例代码:
var windowManager = Components.classes["@mozilla.org/appshell/window-mediator;1"].getService(Components.interfaces.nsIWindowMediator);
var mywindow = windowManager.getMostRecentWindow('mywindow');
if (mywindow) {
alert("found it!");
var thislabel = document.getElementById("mylabel");
thislabel.setAttribute("label", "New Text");
} else {
alert("The window is not open.");
}
}
我在猜,但也许你需要访问正确的文档
var thislabel = mywindow.document.getElementById("mylabel");
// alert something if the element was found
thislabel !== null && alert('found');
就这样!调用了该函数,但缺少窗口的句柄。非常感谢。隐马尔可夫模型。。这确实有效,我很高兴标记了答案,但它似乎有时不会更新窗口,即使调用了函数。有线索吗?