Firefox上下文菜单项未显示
我有一个非常简单的扩展,我想根据内容在上下文菜单上显示一个新项目,这应该非常简单,有很多教程说明了如何做到这一点 问题是,只要我在Firefox上下文菜单项未显示,firefox,firefox-addon,contextmenu,Firefox,Firefox Addon,Contextmenu,我有一个非常简单的扩展,我想根据内容在上下文菜单上显示一个新项目,这应该非常简单,有很多教程说明了如何做到这一点 问题是,只要我在contentareacontextmenu我的新元素中添加popushowing的侦听器,即使我不隐藏它,它也不会显示 以下是xul代码: 和prot-on.js: var质子={ init:function(){ 试试{ if(document.getElementById(“contentAreaContextMenu”)){ document.getEle
contentareacontextmenu
我的新元素中添加popushowing
的侦听器,即使我不隐藏它,它也不会显示
以下是xul代码:
和prot-on.js:
var质子={
init:function(){
试试{
if(document.getElementById(“contentAreaContextMenu”)){
document.getElementById(“contentAreaContextMenu”).addEventListener(“popupshowing”,this.showContextMenu,false);
}
}捕获(e){
这是一个例外(e);
}
},
您好:函数(){
试一试{
警惕(“你好,世界2!”);
}捕获(e){
这是一个例外(e);
}
},
showContextMenu:功能(事件){
试一试{
var show=document.getElementById(“主项上的保护”);
show.setAttribute(“隐藏”,false);
}捕获(e){
这是一个例外(e);
}
},
manageException:函数(异常){
window.openDialog(
"chrome://Prot-On/content/resources/html/showErrorBacktrace.htm",
“errorbacktrace”,
“centerscreen=yes,chrome=yes,modal=yes,Resizeable=yes”,
例外情况,
“显示错误”
);
}
}
试一试{
addEventListener(“load”,proton.init(),false);
}捕获(e){
质子异常(e);
}
如果我只是评论一下这些行:
if(document.getElementById(“contentAreaContextMenu”)){
document.getElementById(“contentAreaContextMenu”).addEventListener(“popupshowing”,this.showContextMenu,false);
}
一切正常,所以我不确定问题出在哪里
manageException函数只是显示任何异常及其正常工作的附加信息,以防您怀疑。您在窗口加载时立即执行
proton.init
,而不是将对它的引用传递给addEventListener
更改此行:
window.addEventListener("load", proton.init(), false);
致:
在窗口加载时,您将立即执行
proton.init
,而不是将对它的引用传递给addEventListener
更改此行:
window.addEventListener("load", proton.init(), false);
致:
我现在觉得很尴尬,这么愚蠢的事情。不管怎么说,谢谢你的解决方案。我现在感到尴尬,如此愚蠢的事情。无论如何,谢谢你的解决方案。