|
阅读:2656回复:5
升级ff32后一个关闭标签页的uc脚本不能用了
ff30+userChrome1.4还好好的,升到ff32就不行了,升级userChrome1.6也不行。请教大家怎么破,谢谢!
页面鼠标右键关闭标签页 //menu_closepage.uc.js
(function() {
try {
var mContext, SepStop, MenuItem0, MenuItem1, ItemAttr;
SepStop = document.getElementById("context-sep-stop");
mContext = document.getElementById("contentAreaContextMenu");
if (SepStop && mContext) {
const ItemIDs = [ "menu_closeWindow", "menu_close" ];
for(var n=0; n<2; n++) {
MenuItem0 = document.getElementById(ItemIDs[n]);
MenuItem1 = document.createElement("menuitem");
MenuItem1.setAttribute("label", MenuItem0.getAttribute(
"label"));
MenuItem1.setAttribute("command", MenuItem0.getAttribute(
"command"));
MenuItem1.setAttribute("id", ItemIDs[n]+"_"+n);
mContext.insertBefore(MenuItem1, SepStop);
}
mContext.addEventListener('popupshowing', function (e) {
MenuItem0 = document.getElementById("context-reload");
ItemAttr = MenuItem0.getAttribute("hidden");
for(var n=0; n<2; n++) {
MenuItem1 = document.getElementById(ItemIDs[n]+"_"+n);
if (MenuItem1)
MenuItem1.setAttribute("hidden", ItemAttr=='true');
}
}, false);
}
}catch(e) {}
})(); |
|
|
|
1楼#
发布于:2014-10-14 11:55
userchromeJS 1.5 ff 32.0 一直在标签上右键关闭的路过,不知楼主是这个意思不。
gBrowser.mTabContainer.addEventListener("click", function(e) {
if (e.target.localName == "tab" && e.button == 2 && !e.ctrlKey) {
gBrowser.removeTab(e.target);
e.stopPropagation();
e.preventDefault();
}
}, true); |
|
|
2楼#
发布于:2014-10-14 15:15
谢谢,你的ucjs脚本很强大,但是我要用标签栏右键菜单,所以目前用不上。我的意思是在页面上鼠标右键出一个“关闭标签页”的菜单。
|
|
|
|
3楼#
发布于:2014-12-05 12:58
context-sep-stop 换成 context-savepage
或者其它右键菜单id,应该是32版本后右键菜单结构变化引起的 |
|
|
|
4楼#
发布于:2014-12-15 10:40
|
|
|
|
5楼#
发布于:2014-12-15 16:12
因为旧context-sep-stop不存在了呗,mContext.insertBefore插入失败
换个存在的ID,插在它前面 |
|
|