Javascript XUL Firefox插件中的appendChild中断
我正在开发Firefox插件,目前需要将menuitems动态添加到MenuOpup元素。我已经在Mozilla开发者中心尝试了基本上所有的方法,但没有一种有效Javascript XUL Firefox插件中的appendChild中断,javascript,firefox,firefox-addon,xul,Javascript,Firefox,Firefox Addon,Xul,我正在开发Firefox插件,目前需要将menuitems动态添加到MenuOpup元素。我已经在Mozilla开发者中心尝试了基本上所有的方法,但没有一种有效 function populateDropdown() { var counter = 0; for (var key in services) { var newMenuItem = document.createElementNS("http://www.mozilla.org/keymast
function populateDropdown() {
var counter = 0;
for (var key in services) {
var newMenuItem = document.createElementNS("http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul", "menuitem");
newMenuItem.setAttribute("label", services[key]['title'])
document.getElementById("mainDropdown").appendChild(newMenuItem);
}
}
此代码在appendChild命令处中断。知道为什么吗?您是否100%肯定该文档。getElementById(“Main下拉菜单”)正在返回非空结果 尝试将其分解为多个部分,然后添加一些调试代码:
var dropDown = document.getElementById("mainDropdown");
if(dropDown) {
alert("dropDown found!");
dropDown.appendChild(newMenuItem);
}
我认为您不需要使用CreateElements。它已经是一个XUL文档,所以createElement在默认情况下应该只创建一个XUL元素。@Gryllida是的,我认为是这样,或者更一般地说,在一个名称空间中插入标记到另一个名称空间的文档中。