前往
大廳
主題

火狐:打造自己的個人右鍵選單AddMenuPlus.uc

—— | 2015-12-02 15:45:48 | 巴幣 0 | 人氣 1112

神器級的UC腳本,可以自由增加自己想要的功能、強化原有的功能(跟以前介紹的三合一首頁一樣,不是對原來的改造強化,而是增加一個新的。)
左邊的首頁是火狐原有的,右邊的新首頁是自己新增的。

配合CSSMenu Wizard隱藏右鍵多餘選項,個人化選單就完成了。
腳本和使用方法:
https://github.com/ywzhaiqi/userChromeJS/tree/master/addmenuPlus

強烈推薦用Notepad++,不要用內建的。

這是我的,頁面截圖建議用我的,不用另外安裝UC腳本,有其他截圖需求就不要用我的,要另外安裝UC腳本。

//複製所選
page([{label:'複製',id:"context-copy",condition:"select",accesskey:"",clone:false},{label:'貼上所選',id:"context-paste",condition:"input",accesskey:"",clone:false},{label:'剪下所選',id:"context-cut",condition:"input",accesskey:"",clone:false},{label: '刪除所選',id: "context-delete",condition:"input",accesskey:"",clone:false}]);

// 頁面信息右鍵選單
new function () {
    var items = [
{
        label: "站內搜",
        tooltiptext: "左鍵:谷歌站內搜\n右鍵:百度站內搜",
        image:"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAA70lEQVQ4jaWTMU7DUAyGcw3ugcqSsrL05ffaShUbQ97vA3AByIS4BWJE3CFzpaosnbO857fTVhUMgFSJpGrS4Ze8+LP9286MWCeVryEyYp0NTf5TF2BjRGNEk1Q2/QCUOqqbhtLloXR5VDdNlPo0AKU2nYyMeDTFyhSrn3gy6oJkB8nbSMxMUf0zS1FFYpYo206AEU1QjJPKsqXSMijGv54MAFAWoXT5UcDRESgP5mWeFLt+JlI+IvEU724ujPLcf42+uDZf3JqiMo8ro7yfc0ivkcWlEW+nANpFvJgv7g+vs+8v7E3xObyDNhPPfedv/QONfpdRxsQAAAAASUVORK5CYII=",
        onclick: function(e){
        switch(e.button){
        case 0:
        gBrowser.loadURI("javascript:var%20Bar=location.host+%22%22;q%20=%20%22%22%20+%20(window.getSelection%20?%20window.getSelection()%20:%20document.getSelection%20?%20document.getSelection()%20:%20document.selection.createRange().text);%20if%20(!q)%20q%20=%20prompt(%22\u8acb\u8f38\u5165\u641c\u5c0b\u7684\u95dc\u9375\u8a5e:%22,%20%22%22);%20if%20(q!=null)%20{var%20qlocation=%22%20%22;qlocation=('http://www.google.com/search?num=30&hl=zh-TW&newwindow=1&q='+q+'&sitesearch='+Bar+'');window.open(qlocation);}%20void%200")
        break;
        
        case 2:
        gBrowser.loadURI("javascript:var%20Bar=location.host+%22%22;q%20=%20%22%22%20+%20(window.getSelection%20?%20window.getSelection()%20:%20document.getSelection%20?%20document.getSelection()%20:%20document.selection.createRange().text);%20if%20(!q)%20q%20=%20prompt(%22\u8acb\u8f38\u5165\u641c\u5c0b\u7684\u95dc\u9375\u8a5e:%22,%20%22%22);%20if%20(q!=null)%20{var%20qlocation=%22%20%22;qlocation=('http://www.baidu.com/s?&ie=UTF-8&oe=UTF-8&cl=3&rn=100&wd=%20%20'+q+'%20%20%20site:%20'+Bar+'');window.open(qlocation);}%20void%200")
        break;
        }
        },
        accesskey: "I"
},{
        label: "展示所有圖片",
        oncommand: function() {
        gBrowser.loadURI("javascript:outText='';for(i=0;i<document.images.length;i++){if(outText.indexOf(document.images%5Bi%5D.src)==-1){outText+='<tr><td><img%20src='+document.images%5Bi%5D.src+'></td><td>'+document.images%5Bi%5D.height+'</td><td>'+document.images%5Bi%5D.width+'</td><td>'+document.images%5Bi%5D.src+'</td></tr>'}};if(outText!=''){imgWindow=window.open('','imgWin','width=800,height=600');imgWindow.document.write%20('<table%20border=1%20cellpadding=10><tr><th>Image</th><th>Height</th><th>Width</th><th>URL</th></tr>'+outText+'</table>');imgWindow.document.close()}else{alert('No%20images!')}");
               },
        image:"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAMAAAAoLQ9TAAAAOVBMVEUAAAAbGxsbGxsbGxsbGxsbGxsbGxsbGxsbGxsbGxsbGxsbGxsbGxsbGxsbGxsbGxsbGxsbGxsbGxvvg6/eAAAAEnRSTlMA+ehJNOrxZz3e1MVLKyXEfVKQKrX3AAAAWUlEQVQY043PSQ6AMAgFUAQ6Dyr3P6xYo8Gu+hckPEICsJAiJruC2KlYIE8vxPiH6pDsyonMSAY8A7Cr0FJ4ALWoHBhSGNBhSI7QnUx34AztbrJsX6Qs/HoBLJEDskHKRZMAAAAASUVORK5CYII="
},{
        label: "顯示丟失圖片",
        url: "javascript:(function(){var%20ims=document.images,%20brokenCount=0,%20brokenURLs=%22%22,%20text,%20i;%20for(i=0;i<ims.length;++i)%20if%20(!%20(ims[i].naturalHeight%20||%20ims[i].fileSize%20>%200))%20{%20++brokenCount;%20brokenURLs%20+=%20%22URL:%20%22%20+%20ims[i].src%20+%20%22\n%22;%20};%20text%20=%20brokenCount%20+%20%22%20broken%20image%22%20+%20(brokenCount==1?%22%22:%22s%22);%20if(brokenCount)%20alert(text%20+%20%22:\n\n%22%20+%20brokenURLs);%20else%20alert(%22No%20broken%20images.%22);%20})()",
        image: "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAMAAAAoLQ9TAAAAOVBMVEUAAAAbGxsbGxsbGxsbGxsbGxsbGxsbGxsbGxsbGxsbGxsbGxsbGxsbGxsbGxsbGxsbGxsbGxsbGxvvg6/eAAAAEnRSTlMA+ehJNOrxZz3e1MVLKyXEfVKQKrX3AAAAWUlEQVQY043PSQ6AMAgFUAQ6Dyr3P6xYo8Gu+hckPEICsJAiJruC2KlYIE8vxPiH6pDsyonMSAY8A7Cr0FJ4ALWoHBhSGNBhSI7QnUx34AztbrJsX6Qs/HoBLJEDskHKRZMAAAAASUVORK5CYII="
},{        
        label: "頁面可見區域截圖",
        image:"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAABISURBVDhPY6AOWPnmPwpGBuhy6PJggE8Buhy6PBjglEADA2/AMAAUhwHtDUDGyACbPAjDAV5JIMAmD8IkA7I1wgDFBmAABgYA9oelARp3ZZ4AAAAASUVORK5CYII=",
        condition: "noinput",
        oncommand : function() {
            var canvas = document.createElementNS("http://www.w3.org/1999/xhtml", "canvas");
            canvas.width = content.innerWidth;
            canvas.height = content.innerHeight;
            var ctx = canvas.getContext("2d");
            ctx.drawWindow(content, content.pageXOffset, content.pageYOffset, canvas.width, canvas.height, "rgb(255,255,255)");
            saveImageURL(canvas.toDataURL(), content.document.title + ".png",  null, null, null, null, document);}
},{
        label: '頁面所有區域截圖',
        image:"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAABISURBVDhPY6AOWPnmPwpGBuhy6PJggE8Buhy6PBjglEADA2/AMAAUhwHtDUDGyACbPAjDAV5JIMAmD8IkA7I1wgDFBmAABgYA9oelARp3ZZ4AAAAASUVORK5CYII=",
        condition: "noinput",
        oncommand: function() {
            var canvas = document.createElementNS("http://www.w3.org/1999/xhtml", "canvas");
            canvas.width = content.document.documentElement.scrollWidth;
            canvas.height = content.document.documentElement.scrollHeight;
            var ctx = canvas.getContext("2d");
            ctx.drawWindow(content, 0, 0, canvas.width, canvas.height, "rgb(255,255,255)");
            saveImageURL(canvas.toDataURL(), content.document.title + ".png",  null, null, null, null, document);}
},{
        label:"查找反向鏈結",
        url: "javascript:(function(){%20document.location.href='http://www.google.com/search?q=link:'+escape(document.location.href)%20})();",
        image:"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAABGUlEQVQ4jb2SsUoDQRRFz66mSTGFKAi3sbC0EcUvUCGW2lqksjGFP2BnJ2hjm2ATMWipYCFYBuwD/sAF7YQVO41FVlyjsyEWXhgYmHvPY9578N+SlEo6lzQDMDEuIMuyfgjhDWiFEG6SnNoveF6BFdu9QtUEuAZqQ7xuCmA7+TxAA+hIqhaMu8AUUMk9G0APqMf+eSbpJL8vSHqSNF94b0uaBUgigACsAVfAPXBs+zTWl6gkHUm6KPNMloTXgS1gsQyQRsLTQItBk14k1ccCAE2gbfsOqAIHkpZz+LdF+gGQtAMI2Aew/QzsAU1JFdvvQAe4lTQXW6Ql2w9D4EsGPSmq++sYR0lSDTgENqNTGKFtYNX24x/zX/oA5V9RBLhEY9sAAAAASUVORK5CYII="
},{
        label:"查看明文密碼",
        url: "javascript:(function()%7Bvar%20IN,F;IN=document.getElementsByTagName('input');for(var%20i=0;i<IN.length;i++)%7BF=IN%5Bi%5D;if(F.type.toLowerCase()=='password')%7Btry%7BF.type='text'%7Dcatch(r)%7Bvar%20n,Fa;n=document.createElement('input');Fa=F.attributes;for(var%20ii=0;ii<Fa.length;ii++)%7Bvar%20k,knn,knv;k=Fa%5Bii%5D;knn=k.nodeName;knv=k.nodeValue;if(knn.toLowerCase()!='type')%7Bif(knn!='height'&&knn!='width'&!!knv)n%5Bknn%5D=knv%7D%7D;F.parentNode.replaceChild(n,F)%7D%7D%7D%7D)()",
        image:"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAMAAAAoLQ9TAAAAjVBMVEUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADqhzP4AAAALnRSTlMAtqa4rqqURQbFn4+EciQUDdbAvJxhCs6ximldV1BNSTwmHBr25+XLsnpYMjAfbW7huwAAAKRJREFUGNM9yFWuxEAMBdFqSneYM8yPwftf3sjSKMcfJV9UnMzWm+nMi82/b8vS1MM2AaTc8jJtOqAoWJUe4ieqaVD5CVvDLeuD+yh/YfaYO7XInLqdSEVnCFQiJVWP01o9kfOfSJuJDFhMSyZvTR2vIj4lg93D9Ws8/by7Cxw8lxzgP8aHdjhCyFhVBug267LrW81ixv0dHrMb9VfHwoXgigPAE+P4C0U7fVB0AAAAAElFTkSuQmCC"
},{
        label: "搜尋共享密碼",
        image:"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAt0lEQVQ4ja2TvRECIRCFv9ECLrCESyzgWqCWSzW7YqzAuQ5swMgWLICIzAyT5fhxRTx9MzvDLrzHYwH4I3pgBhzg34STNX1J3gMWOABdZZNO1ljhLJhlohWTcBa4DztrTlxa8F+QM85GUb4RmzYBdxlbYKyqAYOQwtgXuSUeNXOdCqQOtDA1gROxu0bqY5JfFE6WGLHpFSdlDzKB1de4lcIA7IBro8AReADnUPj5KQeR1s/0Ql6NJxy8Siv3YY6WAAAAAElFTkSuQmCC",
        oncommand: function() {
        gBrowser.loadURI("javascript:(function(){w=open(('http://www.bugmenot.com/view/'+encodeURIComponent(location.host)),'w','location=no,status=yes,menubar=no,scrollbars=yes,resizable=yes,width=500,height=400,modal=yes,dependent=yes');if(w){setTimeout('w.focus()',1000)}else{location='http://www.bugmenot.com/view/'+encodeURIComponent(location.host)}})();");
},
    
}];
var menu = PageMenu({
        label: "多功能選單",
        condition: 'normal',
        insertBefore: 'context-openlinkincurrent',
        image:"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQAQMAAAAlPW0iAAAABlBMVEUAAAAAAAClZ7nPAAAAAXRSTlMAQObYZgAAABBJREFUCNdjgID6fxCaIBcAcUwEeC1dweYAAAAASUVORK5CYII="
});
    menu(items);
};


//當前頁面
new function () {
    var items = [
{
        label: "閱讀模式",
        id: 'reader_mode',
        condition: "normal",
        insertAfter: "RIL_context_savePage",
        oncommand: function() {ReaderParent.toggleReaderMode(event);},
        image: "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACJUlEQVQ4jZXMTW/ScADH8X88aDIv+kK87A1oTLx6I5kHOdY3wNtQk0l4sNvIxjTLkLENKhAYDCYVWigwBmUtUBgPbRlsThpiYuLPgzqt4cAOn8v38CWaUl7SO9UXN3HeEam+XH6aTAbukUu1PviqSdOJLs/tiypNx7262Kpkn5B+ozRJMH5EAltzCQe2kIkHMeycDGpCeomcnRYMn3cVm7QTmyv/oGfz0g589L+HplTUGn/0nIx6NePsVECnnp+hMLP35SJG3Zp6kktZybBTMQT2AFwqAi4d/SUVQTmXgK6UocscNClnMmwWMP4z0JRj4yi2h3jogwmbYKA2i9AbPHSZMxk2hf8H+zhg/CazBtpvNxvIPDQph4HIYqQUcTWoY6LJuBicquVcwkq0dsXIHISQDAdMsodhqM0S9AaPgchCEeKYjtv4MR3h+0RHIx9TIz7aSs7Pqka9eIRq/hDVfOqaKKTRrLAQ+Ti46BZKyQCmoza+XXTR4KNgd91qxOuyknFPNPqNInqyYNKVCmgdZ3Cc3kc+to0aG8ZlV4TMhfF5141PO0418s5lJd169kpvFaErJRNVzqNZiEPMBCFmgpByYYhsCBzjQTa4AnaP7jFe+hnxeZxvd7zuUGCDZkw8rr/WXYzf47y2s+4Mbq/aX6657YtkzW5fpF+/eUQ76cfz2nA4HnpeuR84HI77ZHl5+Q5FUQs2m+3uvCiKWrBYLLcJIbd+AlNJDDwtGwHgAAAAAElFTkSuQmCC"
},{        
        label:"Readability",
        url:"javascript:(function(){x=document.createElement('SCRIPT');x.type='text/javascript';x.src='http://brettterpstra.com/share/readability.js?x='+(Math.random());document.getElementsByTagName('head')%5B0%5D.appendChild(x);y=document.createElement('LINK');y.rel='stylesheet';y.href='http://brettterpstra.com/share/readability.css?x='+(Math.random());y.type='text/css';y.media='screen';document.getElementsByTagName('head')%5B0%5D.appendChild(y);})();",
        image:" data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAMAAAAoLQ9TAAAAaVBMVEUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAnbPKNAAAAI3RSTlMA+O/0xi/p4ZeFUUEI49HMcGhGPigUDurVubi0qomBdFosGkgxKCAAAABlSURBVBjTrYvHDcQwEMS4ypJzvOjYf5GGXIP5ITAY8gxnl26XqZuyo3jlLAzqVUkLhfTw93PpAuwyYj75LaZRAM2X+gegbX8PxlBoC8GBirk/IEhd6QGS9m9ZAGxs5+xpW0ce4QLyDgO0EbBIEQAAAABJRU5ErkJggg=="
},{
        label:"自動翻頁",
        url:"javascript:(function(){if(window['pgzp']){_pgzpToggleBookmarklet();}else{window._page_zipper_is_bookmarklet=true;window._page_zipper=document.createElement('script');window._page_zipper.type='text/javascript';window._page_zipper.src='http://www.printwhatyoulike.com/static/pagezipper/pagezipper_10.js';document.getElementsByTagName('head')[0].appendChild(window._page_zipper);}})();",
        image:" data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAYUlEQVQ4jWNgoBAwovH/U6ifJAP+MzAwMLDgkyTGVlwGYDgNF0A3AJtGdNcQNNyOgYHhF5TGB/CGF8wQfzya/iMz8GFcLqGeC3BpdsBnA8wAYqILVyz8x6Z/GKREQrZjAACcgyBE8VS2qwAAAABJRU5ErkJggg=="
},{
        label:"夜間模式",
        url:"javascript:(function(){var%20night=function(w){(function(d){var%20css='html{opacity:0.7!important;background:black!important;}body{background:white!important;}';var%20s=d.getElementsByTagName('style');for(var%20i=0,si;si=s[i];i++){if(si.innerHTML==css){si.parentNode.removeChild(si);return}};var%20heads=d.getElementsByTagName('head');if(heads.length){var%20node=d.createElement('style');node.type='text/css';node.appendChild(d.createTextNode(css));heads[0].appendChild(node)}})(w.document);%20for(var%20i=0,f;f=w.frames[i];i++){try{arguments.callee(f)}catch(e){}}};night(window)})();",
        image:" data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAMAAAAoLQ9TAAAAY1BMVEUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABmaHTeAAAAIXRSTlMAxsDKvHPOw5pK97WmoYJ4bVtUQDAiCrCMimhhOCwbFwwUUO7SAAAAbUlEQVQY022OVw7AMAhDndl07z3vf8oqEapQFf/AAyOMqFJps5RxWUx2ZOwMqobxkAMCTPoGJOMAyX9QHPwEwKUI+orsZg68+zj56dvWls0qnH83KnKbDtsS7PqLRHla1YVaq4c2kxM6kaJGTC+MlANOz9LO6wAAAABJRU5ErkJggg=="
},{
        label: '简 ↔ 繁 互換',
        tooltiptext: "左鍵:简体 → 繁體\n右鍵:繁體 → 简体",
        image:"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQAgMAAABinRfyAAAACVBMVEUAAAAAAADs4udxvSaxAAAAAXRSTlMAQObYZgAAABtJREFUCNdjQADW0BAgycaAi2ANAbEccBMgAABgfgLQN3XpGgAAAABJRU5ErkJggg==",
        onclick: function(e){
            switch(e.button){
                case 0:
                        gBrowser.loadURI("javascript:(function(){var%20s=document.getElementById(%22tongwenlet_tw%22);if(s!=null){document.body.removeChild(s);}var%20s=document.createElement(%22script%22);s.language=%22javascript%22;s.type=%22text/javascript%22;s.src=%22http://tongwen.openfoundry.org/NewTongWen/tools/bookmarklet_tw.js%22;s.id=%22tongwenlet_tw%22;document.body.appendChild(s);%20})();")
                break;
                    
                case 2:
                        gBrowser.loadURI("javascript:(function(){var%20s=document.getElementById(%22tongwenlet_cn%22);if(s!=null){document.body.removeChild(s);}var%20s=document.createElement(%22script%22);s.language=%22javascript%22;s.type=%22text/javascript%22;s.src=%22http://tongwen.openfoundry.org/NewTongWen/tools/bookmarklet_cn.js%22;s.id=%22tongwenlet_cn%22;document.body.appendChild(s);%20})();")
                break;
            }
                        
    },
},{
        label:"高亮選定區域",
        url:"javascript:function%20LightBox(){this.bindFn=function(c,d,e){if(typeof%20c!=%22string%22||typeof%20d!=%22function%22){return}var%20b=d.bind(this);e=e?true:false;var%20a={type:c,fn:b,userCapture:e};if(Object.prototype.toString.apply(this._fns)!==%22[object%20Array]%22){this._fns=[]}this._fns.push(a)};this.toBind=function(a){if(this._fns){this._fns.forEach(function(c,b,d){a.addEventListener(c.type,c.fn,c.userCapture)})}};this.init=function(b){var%20f=document.createElementNS(%22http://www.w3.org/1999/xhtml%22,%22div%22);if(!f){return}var%20e=Math.max(document.documentElement.scrollWidth,document.documentElement.clientWidth);var%20a=Math.max(document.documentElement.scrollHeight,document.documentElement.clientHeight);f.style.cssText=%22position:%20fixed;%20border:%200px%20solid%20rgba(0,%200,%200,%200.5);%20top:%200;%20right:%200;%20bottom:%200;%20left:%200;%20margin:%200;%20padding:%200;%20z-index:%2099999;%20border-left-width:%20%22+e+%22px;%20border-top-width:%20%22+a+%22px;%20%22;var%20d=document.body||document.documentElement;var%20c=document.createElementNS(%22http://www.w3.org/1999/xhtml%22,%22div%22);if(c){c.style.cssText=%22width:%20100%;%20height:%20100%;%20margin:%200;%20padding:%200;%20-moz-box-sizing:%20border-box;%20box-sizing:%20border-box;%20%22;this._subBox=f.appendChild(c)}this.box=d.appendChild(f);this.width=e;this.height=a;this.later=b;b||this.toBind(f);f.addEventListener(%22mousedown%22,this,false);this.rect={x:0,y:0,w:0,h:0}};this.handleEvent=function(g){g.preventDefault();g.stopPropagation();var%20f=g.currentTarget;switch(g.type){case%22mousedown%22:this.x=g.clientX;this.y=g.clientY;f.style.borderLeftWidth=this.x+%22px%22;f.style.borderTopWidth=this.y+%22px%22;f.style.borderRightWidth=this.width-this.x+%22px%22;f.style.borderBottomWidth=this.height-this.y+%22px%22;f.style.width=%220px%22;f.style.height=%220px%22;this._subBox.style.border=%22none%22;var%20c=this;this._tid=setTimeout(function(){c._tid=0;f.addEventListener(%22mousemove%22,c,false)},100);f.addEventListener(%22mouseup%22,this,false);break;case%22mousemove%22:var%20a=g.clientX,i=g.clientY;f.setCapture(true);f.style.borderLeftWidth=Math.min(a,this.x)+%22px%22;f.style.borderTopWidth=Math.min(i,this.y)+%22px%22;f.style.borderRightWidth=this.width-Math.max(a,this.x)+%22px%22;f.style.borderBottomWidth=this.height-Math.max(i,this.y)+%22px%22;f.style.width=Math.abs(a-this.x)+%22px%22;f.style.height=Math.abs(i-this.y)+%22px%22;this._subBox.style.border=%221px%20dashed%20rgba(0,%200,%200,%200.6)%22;break;case%22mouseup%22:if(this._tid){clearTimeout(this._tid);this._tid=0}else{f.removeEventListener(%22mousemove%22,this,false);document.releaseCapture();var%20a=parseFloat(f.style.borderLeftWidth),i=parseFloat(f.style.borderTopWidth),b=parseFloat(f.style.width),d=parseFloat(f.style.height);this.rect={x:a,y:i,w:b,h:d};this.later&&this.toBind(f)}f.removeEventListener(%22mouseup%22,this,false);break}};this.uninit=function(){if(this.box){this.box.removeEventListener(%22mousedown%22,this,false);if(this._fns){this._fns.forEach(function(b,a,c){this.box.removeEventListener(b.type,b.fn,b.userCapture)},this);delete%20this._fns}this.box.parentNode.removeChild(this.box);delete%20this.box;if(this._subBox){delete%20this._subBox}}}}var%20hbox=new%20LightBox();if(typeof%20hbox.temp!=%22object%22){hbox.temp={}}hbox.temp.flag=0;hbox.bindFn(%22mouseup%22,function(a){this.temp.flag=0;this.box.removeEventListener(%22mousedown%22,this,false);this.box.removeEventListener(%22mouseup%22,arguments.callee,false)},false);hbox.temp.reselect=function(a){if(a.keyCode==a.DOM_VK_ESCAPE){++hbox.temp.flag;if(hbox.temp.flag==2){hbox.uninit();window.removeEventListener(%22keydown%22,arguments.callee,false)}else{hbox.box.style.borderLeftWidth=hbox.width+%22px%22;hbox.box.style.borderTopWidth=hbox.height+%22px%22;hbox.box.style.width=%220px%22;hbox.box.style.height=%220px%22;hbox.box.addEventListener(%22mousedown%22,hbox,false)}}};window.addEventListener(%22keydown%22,hbox.temp.reselect,false);hbox.init();void%200;",
        image:" data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAABUUlEQVQ4jZXSvWpUURTF8d9EvX6sQUgRC9G8gWBjJTaCjUKsVERIY2PlG6jgI0gqIY0gIhZia6EgWAVEYi3WGj8IsiF4JdrckOudGdFVHc5a6382nD0yUJI5LOM6TnbXb7GKB1W13c+PBuUGT7CAu3jdWadxC59xqap+zAKsdOVrVfVz4O3FQ3ysqpvDySU5nmQjyfyEuZuZ7zLHdu727ByaprmMtqoezQK0bbvVNM0J7Gvb9g3M9fxFfJhV7ul9lzUEfMGRfwAsdNkJwAuc735iqpKMsYSXE4Cqeoc13EsymlI+gMd4XlXr0yZgd3lW+pAk+/EM33CjX/gDUFWbOIdTuNKzrmIby8P9GE6gqr7jKc4mOZjkEM7g1XCNpwI6/cJFbOATLuDwtOAsAKxW1biqxriPrf8BrGMpydEki900a395bFJJbif5mmQzyZ1Zud8PpmLu1nwFDAAAAABJRU5ErkJggg=="
},{
        label:"關鍵詞密度查詢",
        url:"javascript:(function(){var%20T=%7B%7D,W=%5B%5D,C=0,s,i;%20function%20F(n)%7Bvar%20i,x,a,w,t=n.tagName;if(n.nodeType==3)%7Ba=n.data.toLowerCase().split(/%5B\s\(\)\:\,\.;\<\>\&\'\%22%5D/),i;for(i%20in%20a)if(w=a%5Bi%5D)%7Bw=%22%20%22+w;T%5Bw%5D=T%5Bw%5D?T%5Bw%5D+1:1;++C;%7D%7Dif(t!=%22SCRIPT%22&&t!=%22STYLE%22)for(i=0;x=n.childNodes%5Bi%5D;++i)F(x)%7DF(document);for(i%20in%20T)W.push(%5BT%5Bi%5D,i%5D);W.sort(function(a,b)%7Bvar%20x=b%5B0%5D-a%5B0%5D;return%20x?x:((b%5B1%5D<a%5B1%5D)?1:-1)%7D);%20s=%22<h3>%22+C+%22%20words</h3>%22;for(i%20in%20W)s+=W%5Bi%5D%5B0%5D+%22:%22+W%5Bi%5D%5B1%5D+%22<br>%22;with(open().document)%7Bwrite(s);close()%7D})()",
        image:" data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAdUlEQVQ4jWNgGGjACKX/45FjwKGGEZ8kIQBXz0SEQg98CvAZ4MHAwDCLgYEhkGh3oYGjDAwMylCaZBcoQ+m7DAwMKxkYGPJItT2PAeJ/GMbrCmy2o8fKTCRXYQXIGmZCMTLwQBPDiHaapQOCgAWPKwgl5UECACwQGGYj5F3pAAAAAElFTkSuQmCC"
    },
        
];
    
var menu = PageMenu({
    label: "閱讀輔助工具",
    condition: 'normal',
    insertBefore: 'context-openlinkincurrent',
    image:"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAiklEQVQ4je3SIQ7CcAzF4Y8Fj5hBYpEkOBSXWIKY5VQoOAYaw8QMB9gJMBgcCLpkIeEPyQQInmn7fknzmpRvaxB1jhWWmIbXYI8jZi/YNgujwgVr5BijxBm7J5Z3WNUmuSVSJlmWgB/pv+AXFgw7/QYLTGJucHjH2gQ1Tigw8vi2IrxrgtV9L+ivO97LHdW2qVgKAAAAAElFTkSuQmCC"
    });
    menu(items);
};

//複製鏈結文字網址
new function () {
    var items = [
{
        label:"複製鏈結文字",
        text:"%LINK_TEXT%",
        image:"
data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAXElEQVQ4jWNgGCzgPxZMSA2GJKkWEmXAfwYGBg9yDfBgYGCYCcXEWogCjjIwMChDaZIBssY8KCYJ5DGghjhJrlBmwPTjTKg4ToCsAVvAeaCJ0S8dkGQARUl54AAAWsMsNkwmkt8AAAAASUVORK5CYII="
    },
    { command: 'context-copylink' ,image:"
data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAyUlEQVQ4jbWTLw6DMBjFfwaDmauq5QhY9C4wyQWQOA6whAtwBS6wO0xOzeKQO8REH6EUwsqWvaRpk37vT7+28AfYX8gZ8NIcIgf6GJESGAATpBqAc2ySFrgDCZACD6CKJU/oNW5Ad5SMnEdc9OQbgQp4SqA8QsyAWu6W+WZaoPhEblQ8sGxah+vFKKHdyFbFl0C4A064G6lDsmV+QIWc0o19G6xXDkbxffcJtdyNaht/0z/jKp6Hq2pWbyPDNSffIU8oJLT1X47jDR7gLDGf5CLwAAAAAElFTkSuQmCC"},
{
    label: "
複製鏈結和文字(左中右三键)",
    tooltiptext: "
左键:BBCode|中键:MD代碼|右键:普通",
    onclick: function(event) {
        var formats = [
            "
[url=%RLINK_OR_URL%]%RLT_OR_UT%[/url]",
            "
[%RLT_OR_UT%](%RLINK_OR_URL%)",
            "
%RLT_OR_UT%\n%RLINK_OR_URL%",
        ];
        var str = addMenu.convertText(formats[event.button]);
        addMenu.copy(str);
        if (event.button === 1) { // 中鍵點擊後自動關閉選單
            document.getElementById("contentAreaContextMenu").hidePopup();
        }
    },
    image: "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAABlSURBVDhP5Y5BCsAgEAP3i/1AP+D/zxUlwWBXXQueOhAQzQStcN3p2UmVFK80C7QGH1aEBniOBPqhgRnsQB8P8KzRe+i/+YHCO+htQNPjdaB/G4D6hoWekFzQohfUxngSg4pglgGUsQ0ZR4jGSwAAAABJRU5ErkJggg=="
}
];
    var menu = PageMenu({ condition:'link', insertBefore:'context-openlink', onpopupshowing: syncHidden });
    menu(items);
    items.forEach(function(it){
        if (it.command)
            css('#contentAreaContextMenu[addMenu~="link"] #' + it.command + '{ display: none !important; }')
    });
};


//打開鏈結的各種方法
new function () {
    var items = [
    {
        label:"在谷歌快取打開",
        url:"http://webcache.googleusercontent.com/search?q=cache:%l",
        image:" data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAdklEQVQ4jc2SsQ3AIAwEbwGK1NmFDdIwE3OxCCOkZYAU+RSRMEFyIuUkN7Z5vwH4IxtQgKYoyk2RgQokICiScnlmcgWWTm1RbeikaJpFUo9J47RsEdTznYB7BfclwvgZGxCfBC4nvY8UgX1WxOJVkdUj4jp84wDU6yD4kZGU+wAAAABJRU5ErkJggg=="
    },
    { command: 'context-copyemail' },

    ];
    var menu = PageMenu({ condition: 'link', insertBefore:'context-openlink', onpopupshowing: syncHidden});
    menu(items);
    items.forEach(function(it){
        if (it.command)
            css('#contentAreaContextMenu[addMenu~="link"] #' + it.command + '{ display: none !important; }')
    });
};

//複製文字
new function () {
    var items = [
    { command: 'context-copy',
      image:"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAPklEQVQ4jWNgoCL4TyQWwGcAIQtgNFZDiDUAp1piDEDGBA3A6VdCBhAKRIIGEAOGqAuINoBiFwysAaRg6gAAE7tI6EZZDKkAAAAASUVORK5CYII=" },
    {
        label:"複製純文字",
        text:"%SEL%",
        image:"
data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAXElEQVQ4jWNgGCzgPxZMSA2GJKkWEmXAfwYGBg9yDfBgYGCYCcXEWogCjjIwMChDaZIBssY8KCYJ5DGghjhJrlBmwPTjTKg4ToCsAVvAeaCJ0S8dkGQARUl54AAAWsMsNkwmkt8AAAAASUVORK5CYII="
    },{
        label: "
儲存選定文字",
        condition: "
select",
        image:"
data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAeElEQVQ4jWNgoBJYz8DA8J8Afs7AwNDOwMDAgs2A/1B6O5IGZHCZgYFBgoGB4ToDA8NqbIbANMzHYcB+KI3TEGINQDaEJBfcxqEeQyACqvg+Gr5MrAHEgkFsgBgDA8N7BkioY8NEGbAfXRKL+CA04DQD4cyEjqkDAH5+TabhljjtAAAAAElFTkSuQmCC",
        oncommand: function() {
        if (!window.NetUtil) Cu.import("
resource://gre/modules/NetUtil.jsm");
        if (!window.FileUtils) Cu.import("
resource://gre/modules/FileUtils.jsm");

        goDoCommand('cmd_copy');
        var data = readFromClipboard();

        var fp = Cc["
@mozilla.org/filepicker;1"].createInstance(Ci.nsIFilePicker);
        fp.init(window, "
另存為", Ci.nsIFilePicker.modeSave);
        fp.appendFilter("
文字文件", "*.txt");
        fp.defaultString = content.document.title + '.txt';

        var res = fp.show();
        if (res != Ci.nsIFilePicker.returnCancel) {
            var aFile = fp.file;

            var ostream = FileUtils.openSafeFileOutputStream(aFile);

            var converter = Cc["
@mozilla.org/intl/scriptableunicodeconverter"].createInstance(Ci.nsIScriptableUnicodeConverter);
            converter.charset = "
gbk";
            var istream = converter.convertToInputStream(data);

            NetUtil.asyncCopy(istream, ostream, function(status) {
                if (!Components.isSuccessCode(status)) {
                    // Handle error!
                    return;
                }

                aFile.launch();
            });
        }
    }}
];
    
    var menu = PageMenu({ condition:'select', insertBefore:'context-paste', onpopupshowing: syncHidden,image:"
data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAPklEQVQ4jWNgoCL4TyQWwGcAIQtgNFZDiDUAp1piDEDGBA3A6VdCBhAKRIIGEAOGqAuINoBiFwysAaRg6gAAE7tI6EZZDKkAAAAASUVORK5CYII="  });
    menu(items);
    //page({ condition:'select', insertBefore:'context-sep-copylink' });
    items.forEach(function(it){
        if (it.command)
            css('#contentAreaContextMenu[addMenu~="
select"] #' + it.command + '{ display: none !important; }')
    });
};


/*右鍵加圖示*/
//圖片另存為
page(
{ id: 'context-saveimage',clone :false,image:
"
data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAMAAAAoLQ9TAAAAOVBMVEUAAAAbGxsbGxsbGxsbGxsbGxsbGxsbGxsbGxsbGxsbGxsbGxsbGxsbGxsbGxsbGxsbGxsbGxsbGxvvg6/eAAAAEnRSTlMA+ehJNOrxZz3e1MVLKyXEfVKQKrX3AAAAWUlEQVQY043PSQ6AMAgFUAQ6Dyr3P6xYo8Gu+hckPEICsJAiJruC2KlYIE8vxPiH6pDsyonMSAY8A7Cr0FJ4ALWoHBhSGNBhSI7QnUx34AztbrJsX6Qs/HoBLJEDskHKRZMAAAAASUVORK5CYII="
});
page(
{ id: 'context-bookmarklink',clone :false,image:
"
data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAABCUlEQVQ4jbWSoVLCYRDELzDM3e2PGSPBRzASCAQCgWAwEIxEI8FgpPswBh6ASDQYCDwA8R8IBIIGPh1F/jgw4858aW/3dr5bs/9EZnbcfXCxATAHVmbWOFvs7n2gAlaSxpdun0oan5Oi7e59SU9AZWZXZtYoKZ4lDc3s+pdK0gzYADtgKWn2PXZm3gIvwBuwLW/xZRARPaCSNPkrYkSMgG1EjA6JHrA5ZVIrPjQ5NhAR3TruB4DFsaHM7ADrk+JiUDWbzRuzfRcy8+6TarVa77a/TC3awLZsmwNrYAW8lmItI6Jbq5Y0LKesJD2amZtZo5RpDewy86HWwN0HwLQmpkuaRMT9yT84Fx9MUjjgcgk5VgAAAABJRU5ErkJggg=="
});
//複製
page(
{ id: 'context-copy',clone :false,image:
"
data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAPklEQVQ4jWNgoCL4TyQWwGcAIQtgNFZDiDUAp1piDEDGBA3A6VdCBhAKRIIGEAOGqAuINoBiFwysAaRg6gAAE7tI6EZZDKkAAAAASUVORK5CYII="
});
//回復
page(
{ id: 'context-undo',clone :false,image:
"
data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAMAAAAoLQ9TAAAAV1BMVEUAAAAAAAAAAAAAAAABAQERAAAAAAAAAAAAAAAAAAAAAAAAAAABAQEAAAABAQEAAAAAAAAAAAABAQEAAAABAQECAgIDAwMBAQEAAAACAgIBAQEAAAAAAAAg8UzUAAAAHHRSTlMA5xG9Rg3yUyDEr5qSaFsY+eHOyLi1Yk4+Oy4GjDFPOAAAAGJJREFUGNOFj1kKwCAMRNVUa127r97/nF3UgqHQ+QiZR4Yh5JYnpSrKkN8Kz0R4JEaXSE33a3JWD8AySYuBdCNzHCzuaxDgAoP2LwJzLNE8ep1rTWfl4V0/vT+tigaqFvKlE4jpAvNwMHn3AAAAAElFTkSuQmCC"
});
//剪下
page(
{ id: 'context-cut',clone :false,image:
"
data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAyUlEQVQ4jbWTLw6DMBjFfwaDmauq5QhY9C4wyQWQOA6whAtwBS6wO0xOzeKQO8REH6EUwsqWvaRpk37vT7+28AfYX8gZ8NIcIgf6GJESGAATpBqAc2ySFrgDCZACD6CKJU/oNW5Ad5SMnEdc9OQbgQp4SqA8QsyAWu6W+WZaoPhEblQ8sGxah+vFKKHdyFbFl0C4A064G6lDsmV+QIWc0o19G6xXDkbxffcJtdyNaht/0z/jKp6Hq2pWbyPDNSffIU8oJLT1X47jDR7gLDGf5CLwAAAAAElFTkSuQmCC"
});
//貼上
page(
{ id: 'context-paste',clone :false,image:
"
data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAWklEQVQ4jWNgoAaQlJT8j44lJCTqSTIAnS8hIXGFaEOwGSAuLi5GtCHYDEDGJBuAyyCcYYPPAHQ+Vm+RYgDWsCHFAKxhQ6wBOOWwBRahGKAodoaYAeSED0kAAOILU0uDB0+zAAAAAElFTkSuQmCC"
});  
//刪除
page(
{ id: 'context-delete',clone :false,image:
"
data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAATklEQVQ4jWNgoCL4TwA3EGMAPrnrhAwhZIA4IUMIGcBAyBBCBqBjkgwgSi1M0APKVsbBJ2gAsqY8LJqJMgCXzfRxAVXCgBCgnQGkYOoAAAV3QUQ5G1NkAAAAAElFTkSuQmCC"
});     



//當前頁面
new function () {
    var items = [
{
    label: '翻譯當前頁面',
    tooltiptext: "
左鍵:有道\n中鍵:谷歌\n右鍵:必應",
    image:"
data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAABnUlEQVRYhe2Uv0sCYRjH/V8ENzeHoEFwCIKGZicVwiEhChEkCIcgQaxFkJYGgyispZzCRWoQokXw12lxdpbZi5mpcF2n34bg8O1MvevM5R74Di/38Lyfe5/v8xiyRgdmKYMOoAPoAIMHxupFeXETrD2Iu6UtMFbvSOXNbm0BxsUHW0cnnZdUcYan14K82Y3uDUMBCBzR5K8n9kDB4sHnyxsF0Yglh+bWQ3EIHBmr98tbZSZk7UH0xR4F8bCyJ8srzq3h0X8AEk2gncrIWtc8vUItcAhmfl35FNS2j+hW1F5RsHh+zSeRcwCA2OqiurGvvgWDal2kKYh2KjM073nnGADAl59QXvD/zQM/TckXqxREPRSXvudMLjRiSQluUrMqWkQlmw9iqysB9MUe7pcDKFg86FxnAQDNkxRyJpc2UzBMFWdYNpoCR75fZPdMUS1VAFmjQ3rqwSDRhOI6qgFKNp8MQE0d1QCM1Utd3uvyswUQODJbgD4v/C8AtxqReWDUZtQEgC9WIXCE2gOjQnMA1h5UpKm2QEvpADqADvAFfiAdWp4idLoAAAAASUVORK5CYII=",
    onclick: function(e){
            switch(e.button){
                case 0:
                    gBrowser.loadURI("
javascript:%20void((function()%20{var%20element%20=%20document.createElement('script');element.id%20=%20'outfox_seed_js';element.charset%20=%20'utf-8',element.setAttribute('src',%20'http://fanyi.youdao.com/web2/seed.js?'%20+%20Date.parse(new%20Date()));document.body.appendChild(element);})())");
                break;
                                case 1:
                    gBrowser.loadURI("
javascript:{d=document;b=d.body;o=d.createElement('scri'+'pt');o.setAttribute('src','https://translate.google.com/translate_a/element.js?cb=googleTranslateElementInit');o.setAttribute('type','text/javascript');b.appendChild(o);v=b.insertBefore(d.createElement('div'),b.firstChild);v.id='google_translate_element';v.style.display='none';p=d.createElement('scri'+'pt');p.text='function%20googleTranslateElementInit(){new%20google.translate.TranslateElement({pageLanguage:%22%22},%22google_translate_element%22);}';p.setAttribute('type','text/javascript');b.appendChild(p);}void%200");
                break;
                                case 2:
                    gBrowser.loadURI("
javascript:(function(){var%20s%20=%20document.createElement('script');%20s.type%20=%20'text/javascript';%20s.src%20=%20'http://labs.microsofttranslator.com/bookmarklet/default.aspx?f=js&to=zh-chs';%20document.body.insertBefore(s,%20document.body.firstChild);})()");
                break;
                        }
        },
},{    
    label : '劃詞翻譯(海詞/必應)',
    tooltiptext: "
左鍵:海詞劃詞\r\n右鍵:必應劃詞",
    image:"
data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAADpElEQVQ4jUXM609TdwDG8d9f0Be+8LXbkmXLOsYqCg4RZ4zGhG1cNoxZRoaSbcYSzxLDZB30UKGopThBWnqZRUWuYy5Ygh2WRC6hCuzCgkDKoIdLGdALPafntKX8zrMX3bIn+bx8voQQQjwej2JzM5A/NDSkdrvd6kAopA4EQupAKKQWBEG9GpHUX6xK6rwlSZ3vk9QXVvj8cq9XQQghpKmpSdFqNZk7ux6IFouJWi0m2tvTSbu6HtKBgX4ak0QaTIKWLILmzoKeeAl6alYWi/6Mm8s9XgVZWFwsWFiYE+bmZjE/P4eFhXn0/diF7p4OLC39hb1kEoE4cHYUyHoCvOcCjriAXBeNFg4GCkg4HL7s969Tt/sXSJKEZDKJ7u4OzMz8jv+2LQKFvYDKBmTYUw7aZJrZGrxMgsEgIwg8dTjsGB19hqnJF+joeABJEv8P8MCHZkBZC6TpU96uk2m6LsiQ7e0gA4ByvmUYDPUwNtwAx/kgJQE+DggJYDkA5BkB5bdAmiblHY1M0yuCDPH7OWZra4P2P/4ZppZmtNy5jVbnDHRDQNUT4LtB4Bsn8Ok94GM7UGQDPjLLONmwS7PZvxliNBoYrbaSWi3NWFtdxMoqhyvdQRS3AefuyTjbJuOTuzIKbRQftOzh1K0EjtXHkFkTpZmaNYY4HDbG5R6m25s+hAIc/BscyttFHL+5hxOGJN6/uYvc6wkUNMVQYhGRUyviMBvFIa2QCuj7OKbMFqH9zzcQ3FrG+voSLrUJyKlP4lh9Ajn6OHLrY3BOR7GyyePLH6I4WC0go5qnGZo1hqg0fuZdbZSeNPB4OOLHyAyHUquAo/pd5OjjOHIthlKrhCmvgMFfBbSP8Mio5qGqilBVJceQNy96mHTNFlXqRLx6Iwplo4Cs6zHk6OM4WhdDlk6CzR1Fx5iAz1sFTHp55BkiSNfsUFUFx5AD5x4xr5SO0bdqtnHAHMNrlhhO34mlztcknGkQMb0ooPaRgKLveXjmeej6IlBWhlOBS4ax4iqHV9T9tIWapxJqhyXYn4m4YJNwuEbE1a4oljd4uH7j4ZziMe3l8fSPCDK1AfHQldli8nVjzz6H23e//8VOYmCSl53/uuvm5TMGXn48GZFNrh05W7cjZ9eE5cLGsPz8ZShx0eS9rzht30cIIeQz1rD/Vvvw+ebOCfZ25wTb3DnBXm2ZYI9XTLC9A+NsSd04+3rZOPtG2Sib9tUoa3QMnzebDfsJIeQfW4HggrdAfSwAAAAASUVORK5CYII=",
    onclick: function (e) {
        switch(e.button){
        case 0:
            gBrowser.loadURI("
javascript:void((function()%20{var%20element=document.createElement('script');%20element.setAttribute('src',%20'http://dict.cn/hc/init.php');%20document.body.appendChild(element);})())");
            break;
        case 2:
            gBrowser.loadURI("
javascript:(function(a,b){a.getElementById('bing_cw')||(b=a.createElement('script'),b.id='bing_cw',b.onload=function(){BingCW.Init({MachineTranslation:true,WebDefinition:true})},b.src='http://dict.bing.com.cn/cloudwidget/Scripts/Generated/BingTranslate_Hover_Phrase_Selection_ShowIcon.js',a.head.appendChild(b))}(document))");
            break;
        }  
    }
},{
    label: "
漢典查字劃詞解釋",
    url: "
javascript:void((function()%20{var%20element=document.createElement('script');%20element.setAttribute('src',%20'http://www.zdic.net/tools/zih.asp');%20document.body.appendChild(element);})())",
    image: "
http://www.zdic.net/favicon.ico"
},

];

var menu = PageMenu({condition: 'normal', insertBefore: 'context-openlinkincurrent',image:"
data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAA7ElEQVR42mNkwATrgXg/EE9iIAIwYhETAOKDQFwOxDuIMeA/A3FgFhCnE+MCZBAMxI1ArEOMFw4AcTIQ30USOwrEcWhiOA2wBeIOILaG8j2AOAKIE0gJRJCmQCC+CsThQOwNxB9IMUAAGoXfiNGMbIA8EG+BBpYnEN8G4jtQORVoGChDxUKAeC22aFTBEViggLSCpg1WIOYEYiN80fgfjzjIkkXIMUOsAaD00ATE2kCcB8RuQOxDigEgb8wA4s1ArADE54FYEBTIuAwgJrm3A3EVIxF5YCaUbgPij1C2MxCvARlOjAG4AvUcKDYAi+YxEXgzorIAAAAASUVORK5CYII=", onpopupshowing: syncHidden });
    menu(items);
};


//當前頁面
new function () {
    var items = [
{
        label:"
在谷歌快取打開",
        url:"
https://webcache.googleusercontent.com/search?q=cache:%u",
        image:"
data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQBAMAAADt3eJSAAAAKlBMVEUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKE86IAAAADXRSTlMADfPbvlJNPuuEILMzPXScigAAAEhJREFUCNdjQAW8IILNSRvCmBwow3v3LlDAECrFEgBlMAmA5KEMRgWoFKsDA0SxcAJEu6hRAcRAlfR2mBUVBVAGexdMaAHCAQDU2wqQMtL8zwAAAABJRU5ErkJggg=="
},{
        label:"
此頁網站樣式",
        oncommand: "
stylishOverlay.findStyle(event)",
        image:"
data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAACXBIWXMAAA7EAAAOxAGVKw4bAAAA8klEQVQ4y6XSoUpEQRiG4WdhwSIIFpNeg2AUJmw0LAajRbDtFjFq8gJMmhTvQRBNli+axKyCNpvJYrEc5aBz1kX/doZ5H84wQ8eUUpZLKSO/TK8SXuIRm5jDVZK1qYAmnsFKE39OJ9JrxUMc4gmDyt4q0gZm8II9HHX88Q/k+xGO8IBXnHUg50nWu4BVHCdZLqVsTYPUbuEeG0luSynbOJmE1IADzCcZN9+TkHENWMINFpO8T0DesNrreIW32E9y0VprI28YJrnuV+IdzOKuvZ7ktJQCY+wmua7dwg5GGCR5NsX0/hNDv4lHf4m/ACz8JYYPtRRoOaKFRHoAAAAASUVORK5CYII="
},{
        label:"
此頁油猴腳本",
        image:"
data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAMAAAAoLQ9TAAAAflBMVEUAAAAzMzNNTU2bm5s+Pj4uLi4qKirq6urZ2dm0tLR4eHhxcXFdXV1DQ0M7Ozv8/PzAwMCwsLCnp6eCgoJHR0dGRkY3NzceHh4HBwfk5OTg4ODR0dHPz8/FxcWqqqqenp6UlJSOjo58fHxsbGxmZmZYWFg6OjomJiYkJCQYGBhoja3FAAAAAXRSTlMAQObYZgAAAINJREFUGNNNjlcSwyAMRFf0YMB24pbe2/0vmHHADO9HehpptEg8wsBR4AKOonBLgKZ99qvSgK+yt3QARsq+mi6AZ2yNRBieunNo3qc0INjJzpufNg66qt7EWzr/ay2jA/KeGhVDivx4J+cPjGHBqNHAFdHllrPbC8h4DvVFQSP63qT+B7shBQwlpDJKAAAAAElFTkSuQmCC",
        oncommand: function () {
            var domain = content.location.hostname;
            gBrowser.selectedTab = gBrowser.addTab('https://www.google.com/search?q=site:greasyfork.org%20' + domain);
        }
},{
        label: "
WOT信譽檢測",
        url: "
javascript:(function%28%29%7Bvar%20f%3Ddocument.getElementById%28%27wot-bookmarklet%27%29%3Bif%28f%29%7Bf.parentNode.removeChild%28f%29%3Breturn%3B%7Dvar%20l%3Dlocation.hostname%3Bif%28l%26%26l.length%29%7Bf%3Ddocument.createElement%28%27iframe%27%29%3Bif%28f%29%7Bf.setAttribute%28%27id%27%2C%27wot-bookmarklet%27%29%3Bf.setAttribute%28%27src%27%2C%27http%3A//www.mywot.com/bookmarklet/%27+encodeURIComponent%28location.hostname%29%29%3Bf.setAttribute%28%27frameborder%27%2C0%29%3Bf.setAttribute%28%27scrolling%27%2C%27no%27%29%3Bf.setAttribute%28%27style%27%2C%27position%3Afixed%3Btop%3A10px%3Bleft%3A10px%3B%27+%27width%3A135px%3Bheight%3A235px%3Bborder%3A0%3Bmargin%3A0%3Bpadding%3A0%3Bz-index%3A10487575%3B%27%29%3Bif%28document.body%29%7Bdocument.body.appendChild%28f%29%3B%7D%7D%7D%7D)()",
        image: "
data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAABkklEQVQ4jX2Tu2pUURSGvzMYSYqMH/EJjJfEy1uIYNAuttEm9p5yGgsfQC0MsbAQLCyCZSAQbcwriBoHgnaCFitOETLNsTjrxM1k8IcN+6z1/+us266YgHoNWAdWgAtpPgB2gFcR8bnk9wrhWfUFsAv8ApYB81xN2676Up3rdFUnBraBEfAgIkZqExGdv4mISp0HXmfQlYgYdxk8S/FqRIwmy+qQvnvAIfAUoFKvAx+AKxHxJ/94GfiWRIBz6R+mv5/+m71s2GYhvgTsATVwMU8N7GVgkrsJrFfql2xYiToinpcG9VGWWuIr6rE6WxAP1YXJ+tXzahTfs+pxb5L4HzTk1AqMe7RLcqQ2agP0gbUpAe4D/YJ3BPw4Q7thbyPiSaa2BHxM0psUrwEDYDki9pP3GFio1Bu027c0ZYzdTsxzeoz7wK2uIRvqO/Wkxsxg2r1K7gb8ewt11r6V0acifVu0q1yfBIiIMXAH+AkM1UEKZtSZvA+AIfAbuJuaU2MhV/shcBtYBMbAd+A97XP+VPL/Ai+xk5pD13LFAAAAAElFTkSuQmCC"
},
];
    
var menu = PageMenu({condition: 'normal', insertBefore: 'context-openlinkincurrent',image:"
data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAACXBIWXMAAA7EAAAOxAGVKw4bAAAAcklEQVQ4y7XSuw2FMBBE0RO4CEJKoAOoiN7IaQuhpxeYxAGywBgBI222M7r74QO1iJX1SBGCDxUwY8GKX4Ydc5zSfD3+qU4Djgj25j5RVAfkZncJcjNMtQFNWtx4dcYSQVcy1O6g1DM8DfDKJ4abFO9rA1D9MeUVPKkRAAAAAElFTkSuQmCC", onpopupshowing: syncHidden });
    menu(items);
};


//圖片
new function () {
    var items = [
{
    label: "
多引擎搜圖",
    image:"
data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAXklEQVQ4jaVTQQ4AMATzFq/y/49sFxIRoWiyU9eWDaIar+FLsBrwVCgqjEcmYku1Fqya0iSKvQFkgvRrJjiBBGUP5jnk3q2ClkCDzr+QmYzmIJqsJtFjvQsep22E8AGEZDOcIlQ9sgAAAABJRU5ErkJggg==",
    condition: "image",
    oncommand: function() {
        var url = encodeURIComponent(gContextMenu.mediaURL || gContextMenu.imageURL || gContextMenu.bgImageURL);
        var SEs = [
            'http://stu
.baidu.com/i?rt=0&rn=10&ct=1&tn=baiduimage&objurl=',
            '
http://www.tineye.com/search/?pluginver=firefox-1.0&sort=size&order=desc&url=',
            '
http://pic.sogou.com/ris?query=',
            '
http://iqdb.org/?url=',
            '
http://regex.info/exif.cgi/?url=',
            '
http://saucenao.com/search.php?db=999&url=',
            '
https://encrypted.google.com/searchbyimage?image_url=',
            '
http://st.so.com/stu?imgurl=',
        ];
        var lastTab;
        for (var n = 0; n < SEs.length; n++) {
            lastTab = gBrowser.addTab(SEs[n] + url);
        }
        gBrowser.selectedTab = lastTab;
    }
},{
    label:"檢視圖片資訊(F)",
    command:"context-viewimageinfo",        
    image:"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAOCAYAAAAmL5yKAAACMElEQVQokYXNTUtUYRjG8QNRH6A+Qi3btA7RiaA2BYU0LdqEnyCoZiyKgiBxkQg2TZSjEzTFlDnSG4FYJs3jnDnTzLE5z3Pfz3kRX5LCaETHlyPU1SKULNMbfsv7fxnZbHYHM6dL7sTPUXcawpuBcD9j1J3awjRMdxKK9axhWdZOyW5uwK/hgb+AAR7DE3cC6WB5S4/9BYyxH64F+vv9eQzK55jP78dU8RQy3hekghA9wcq63iBETxAiFawg49dh/x0Ycp5h8cM+zJjH8cibWQ/0BiG6/UV0uV+R9L6jJwj/DeT8OaT9ebygAvq0u2G1Q0+ipZzBMbMNzcVOXJEmMv7C74AqFPYodl/n/BpSwSru+nXc8ebQHSwhHayinV2cKN5Ck4ghIuKIiBiOjF5HuyxhTI+HhuM4B4j1SM6v4ZosI2olcLLYgZbyQ1yVJpqLnYiIGA6J1nVNIoazVheK5IQGETUTe2ZCWjhauLFh6bC4vOFxTUTEETVvIq/KoaGUuiSJrPMf76Pxr6X/iYg4TpttEKocGpooJUmVzpWSaBQxRETrtppEHNG1ADMPKVJDTz8N1hOVvnqy0r+tRKWvnrZfLlWoOmsQ0TgRvdKKhz3iEY94xGN+7zIPu6TfuaTfbo7vObbdYNi23eA4zhkpZYyIbhNRjpkLzOwT0Tet9bLW+ofWGn8iom5js8tms7vy+fxuy7L2VqvVg1LKqJTyolIqqZR6Q0SKmWtEdMEwDOMXU3ye4MW+ZycAAAAASUVORK5CYII="
},{
    label:"複製圖片網址",
      image: "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAPklEQVQ4jWNgoCL4TyQWwGcAIQtgNFZDiDUAp1piDEDGBA3A6VdCBhAKRIIGEAOGqAuINoBiFwysAaRg6gAAE7tI6EZZDKkAAAAASUVORK5CYII=",
      class: "context-copyimage",
      oncommand: "gContextMenu.copyMediaLocation();",
      accesskey: "O"},
    {command: '
context-copyimage-contents',
     image:"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAhUlEQVQ4jbWQyw2DMBBEHxFNTA10kR6oB9JjelilCrjwsS17DbGYiw8jP80+aEwHIGnJdLOZfS5RUoCkRdJX0lT7+3K6NzDWIL3T/bZ3AIqnHA7MrEvLK268BQCE4A04SmKHeA5KidxUF2QSubkFyJxzLigIa4sH3bt/JEZpBlQlPuImzAon1SmKukhOFgAAAABJRU5ErkJggg=="
},{
    label: "打開圖片RAR",
    condition: "image",
    image:"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAWklEQVQ4jWNgGCwghoGB4Q8DA8N/IvEfBgYGT2QDPjIwMFijGfofB5sBqvYZLsXIYsgYmzxBA4iVp50BZHmBjZouoNgAor3wjIHCdOAJFSA2JT5jQEuJQxgAAFeqQ1dXIFWxAAAAAElFTkSuQmCC",
    oncommand: function(){
    var imageUrl = (gContextMenu.mediaURL || gContextMenu.imageURL);
    imageUrl = imageUrl.replace(/\.jpg\.thumb\.jpg$/, '
.jpg');
    var file = Cc["@mozilla.org/file/directory_service;1"].getService(Ci.nsIProperties).get("TmpD", Ci.nsILocalFile);
    file.append(new Date().getTime() + ".rar");
    Cc["@mozilla.org/embedding/browser/nsWebBrowserPersist;1"].createInstance(Ci.nsIWebBrowserPersist)
    .saveURI(Cc["@mozilla.org/network/io-service;1"].getService(Ci.nsIIOService)
    .newURI(imageUrl, null, null), null, null, null, null, null, file, null);
    setTimeout(function() {
    file.launch();
    }, 500);
    },
},

];
    
var menu = PageMenu({ condition:'
image', insertBefore:'context-saveimage', icon:'image', onpopupshowing: syncHidden});
menu(items);
items.forEach(function(it){
        if (it.command)
            css('
#contentAreaContextMenu[addMenu~="image"] #' + it.command + '{ display: none !important; }')
    });
};


//顏文字輸入
var Specialcharacters = PageMenu({
                label:"顏文字輸入",
                         condition:"input",
                accesskey: "T",
                insertBefore:"context-searchselect",
                oncommand: function(event){
                        var input_text = event.target.getAttribute('input_text');
                        if(input_text) {
                                addMenu.copy(input_text);
                                goDoCommand("cmd_paste");
                }
        },
    image:"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAMAAAAoLQ9TAAAAYFBMVEUAAAD4+PghISERERExMTEUFBSVlZVPT08eHh4YGBi8vLyioqKBgYF4eHhJSUlBQUHg4ODR0dG1tbWamppzc3NgYGBXV1ft7e3i4uKvr6+oqKiPj4+JiYkoKCgkJCQICAgmMdadAAAAAXRSTlMAQObYZgAAAINJREFUGNNti1cSAyEMQwX20mGzJb3d/5YxJX+rGSw/IeNQJztp7eflz4ayAlSiPPij+qLc3vokPBIfZNqMmCpuT0QWnxT8F3WZ5IlrqfYjma4HQwMI4FsrcAPML6QC0dlirY2FJGSzlfcV7t5+GIi2GAW+oGn3j2qrGwwEJq1JBxzpB9l0A8JvhjyGAAAAAElFTkSuQmCC"
});
Specialcharacters([
                {label: "^_^", input_text:"^_^"},
                {label: "-_-||| ", input_text:"-_-||| "},
                {label: "Orz", input_text:"Orz"},
                {label: "-_,-", input_text:"-_,-"},
                {label: "╯﹏╰", input_text:"╯﹏╰"},
                {label: "。◕‿◕。", input_text:"。◕‿◕。"},
                {label: "、( ̄. ̄)", input_text:"、( ̄. ̄)"},
                {label: "O(∩_∩)O~", input_text:"O(∩_∩)O~"},
                {label: "o(╥﹏╥)o", input_text:"o(╥﹏╥)o"},
                {label: "( ̄3 ̄)", input_text:"( ̄3 ̄)"},
                {label: " o(>< )o", input_text:" o(>< )o"},
                {label: "_(:з」∠)_", input_text:"_(:з」∠)_"},
                {label: "(・(ェ)・)", input_text:"(・(ェ)・)"},
                {label: " ̄へ ̄", input_text:" ̄へ ̄"},
                {label: "╮(╯_╰)╭", input_text:"╮(╯_╰)╭"},
]);


//快速回覆
    var Quickpostsub = PageMenu({
            label:"快速回覆...",
            condition:"input",
            insertBefore:"context-undo",
            oncommand: function(event){
                    var focused = document.commandDispatcher.focusedElement;
                    var selected = getBrowserSelection();
                    var input_text = event.target.getAttribute('input_text');
                    if (focused) {
                            var host = addMenu.convertText("%h"),
                                    url = addMenu.convertText("%u");
                            if (host.contains("tieba") || url.startsWith("data:text/html")) {
                                    addMenu.copy(input_text);
                                    goDoCommand("cmd_paste");
                            }
                            else if (selected) {
                                    addMenu.copy(input_text);
                                    goDoCommand("cmd_paste");
                            }
                            else {
                                    var aStart = aEnd = focused.selectionStart;
                                    focused.value = focused.value.slice(0, aStart) + input_text + focused.value.slice(aEnd);
                                    var aOffset = aStart + input_text.length;
                                    focused.setSelectionRange(aOffset, aOffset);
                            }
                            return;
                    }
                    else {
                            addMenu.copy(input_text);
                            goDoCommand("cmd_paste");
                    }
                    return;
            }
    });
    Quickpostsub([
            {label:"謝謝你的解答~~~", input_text: "非常感謝你的解答!!!",image:" "},
            {label:"不用客氣~~~", input_text: "不用客氣,大家互相幫助……\u256E\uFF08\u256F\u25C7\u2570\uFF09\u256D",image:" "},
            {label:"看起來很不錯~~~", input_text: "看起來很不錯哦,收了~~~\n謝謝LZ啦!!!",image:" "},
            {label:"謝謝樓主分享~~~", input_text: "謝謝樓主的分享!這個絕對要頂!!!",image:" "},
            {label:"樓上正解~~~", input_text: "樓上正解……\u0285\uFF08\u00B4\u25D4\u0C6A\u25D4\uFF09\u0283",image:" "},
            {label:"坐等樓下解答~~~", input_text: "坐等樓下高手解答……⊙_⊙",image:" "}
    ]);

    
//================分頁右鍵選單-================
tab([//添加分頁右鍵選單項
  {
    label: "按標題重排所有分頁",
    tooltiptext: "按標題重排,同域名靠近",
    oncommand: function() {
            //var len = gBrowser.mPanelContainer.childNodes.length;
            //for (var i = 0; i < len; i++) {
               // if (event.button == 0) gBrowser.getBrowserAtIndex(i).reload();
               // else if (event.button == 2) gBrowser.getBrowserAtIndex(i).stop();
                //   }
            Array.from(gBrowser.tabs).sort((a, b) => a.label.localeCompare(b.label)).forEach(gBrowser.moveTabTo.bind(gBrowser));
         //使用favicon的值来排序
            Array.from(gBrowser.tabs).sort((a, b) => a.image.localeCompare(b.image)).forEach(gBrowser.moveTabTo.bind(gBrowser));
             }
},{
    label: "破解右鍵防複製",
    url: "javascript:alert(document.body.oncontextmenu=document.body.onmouseup=document.body.onmousemove=document.body.onclick=document.body.onselectstart%20=document.body.oncopy=document.onmousedown%20=%20document.onkeydown%20=null)",
    image: "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAEZSURBVDhPjZExisJQEIYfrIW4HsBOq8VLLCoiKjYeQNAykHZBRQW9gPZewkJBiwVLL7B3sBRLC2c2M5mJL9FH/OEneZP//5L3Ykjj6Rxd5kCaXhVtS8wtDSb1NsQG2KWkJf4sDaQByFKJSx/aANjvEQYDnpFodqjVcdPuPEOSgNloglAoYJBEWK14vu71eX37yODS8+OQJIDvj8cQkM0i7HZ4/czzettoRhmpOwCBfr8r0VsZ1u3yXDNSdwNIUCyG5VwO8XLhmWak7gbovu8ECEyfT9KM1B8A23g+Pw7S98MrncfpFGWk/hoA1SqX/r7KvNbzgFIJFz9Dnkk9LnrAv9HzOKz7JhEUWq10gFqDrrVU4rIDaTbGmH8Vxu1dx2qGHAAAAABJRU5ErkJggg=="
},{
    label: "複製此頁標題+網址(左中右三鍵)",
    tooltiptext: "左鍵 MD,中鍵普通,右鍵 BBS\n包含鏈接、非鏈接 2 種情況",
    onclick: function(event) {
        var title = addMenu.convertText("%RLT_OR_UT%"),
            url = addMenu.convertText("
%RLINK_OR_URL%");
        // 簡化下標題
        // [/\s(·|::|-|\|)\s.*/i, /_[^\[\]【】]+$/].forEach(function(r){title = title.replace(r, "");});

        var formats = [
            "[" + title + "](" + url + ")",
            title + "\n" + url + "",
            "[url=" + url + "]" + title + "[/url]"
        ];

        var str = formats[event.button];
        addMenu.copy(str);

        if (event.button === 1) { // 中鍵竟然不會自動關閉
            var node = event.target;
            while (node.localName != 'menupopup') {
                node = node.parentNode;
            }
            node.hidePopup();
        }
    },
    image: "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAABlSURBVDhP5Y5BCsAgEAP3i/1AP+D/zxUlwWBXXQueOhAQzQStcN3p2UmVFK80C7QGH1aEBniOBPqhgRnsQB8P8KzRe+i/+YHCO+htQNPjdaB/G4D6hoWekFzQohfUxngSg4pglgGUsQ0ZR4jGSwAAAABJRU5ErkJggg=="
},{    
   label: "複製所有分頁標題+網址(左中右三鍵)",
    tooltiptext: "左鍵:BBCode\n中鍵:MD 格式\n右鍵:HTML Code",
    class: "copy",
    onclick: function(e) {
        var text = "",
            tabs = gBrowser.mTabContainer.childNodes,
            title,
            url;
        for (var i = 0, l = tabs.length, win; i < l; i++) {
            win = tabs[i].linkedBrowser.contentWindow;
            title = trimTile(win.document.title);
            url = win.location.href;
            var formats = [
                '[url=' + url + ']' + title + "[/url]" + "\n",
                '[' + title + '](' + url + ")" + "\n",
                '<a href="' + url + '">' + title + "</a><br>" + "\n"
            ];
            text += formats[event.button];
        }
        Cc["@mozilla.org/widget/clipboardhelper;1"].getService(Ci.nsIClipboardHelper).copyString(text);
        XULBrowserWindow.statusTextField.label = "複製:" + text;

        function trimTile(title) {
            [/\s(·|::|-|—|»|\|)\s.*/i, /_[^\[\]【】]+$/].forEach(function(r) {
                title = title.replace(r, "");
            });
            return title;
        }
    }
},{    
    id: "context_closeTabs",
    label: "關閉重複分頁",
    insertBefore: "context_closeTabsToTheEnd",
    oncommand: function () {
               var num = gBrowser.browsers.length;
               var msg = "";
               for (var i = 0; i < num; i++)
               {
               var a = gBrowser.getBrowserAtIndex(i);
               try
               {
               for (var j = 0; j < num; j++)
               {
                if (j != i)
                {
                    var b = gBrowser.getBrowserAtIndex(j);
                    if (a.currentURI.spec == b.currentURI.spec)
                    {
                        //gBrowser.alert(a.currentURI.spec);
                        if (msg != "")
                            msg += "\n";
                        msg += b.currentURI.spec;
                        gBrowser.removeTab(gBrowser.tabContainer.childNodes[j]);
                        num--;
                        j--;
                        //Not executing "i--" because there won't be tabs equal before the one on i
                    }
                }
                }
                }
                catch(e)
                {
                Components.utils.reportError(e);
                }
                }
                if (msg != ""){
                alert("\u95dc\u9589\u7684\u91cd\u8907\u5206\u9801:\n\n" + msg);
                }
                else
                alert("\u6c92\u6709\u91cd\u8907\u5206\u9801");
                }
}]);


//當前頁面
new function () {
    var items = [
{
    label:"檢看元素",
    command:"context-inspect",
    image:"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAMAAAAoLQ9TAAAAVFBMVEUAAADtHjTtHjTtHjTtHjTtHjTtHjTtHjTtHjTtHjTtHjTtHjTtHjTtHjTtHjTtHjTtHjTtHjTtHjTtHjTtHjTtHjTtHjTtHjTtHjTtHjTtHjTtHjT1e2N/AAAAG3RSTlMA4OZU+Ay3496wd0M0Jn737M3LvUg9EAUBvIDfJNtBAAAAgklEQVQY022ObQ+CMAyE227rXthQQATt//+frpvEROiHS+7Se1q4HDcyEb+fhx+8kLUk9Ph6eRVAhLJIS1xYdtAAdvbaSlKqGlOlyFg10o8euApZRKPOIN7up+Cv4rlB8wHNDerCvPWz2+Sd7q0yZQ3yLENvrqG/jt1rK0WimBxczQejtATXMSkb9gAAAABJRU5ErkJggg=="
},{
    label:"檢看頁面信息(I)",
    command:"context-viewinfo",
    image:"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAMAAAAoLQ9TAAAAPFBMVEUAAAAAu5wAu5wAu5wAu5wAu5wAu5wAu5wAu5wAu5wAu5wAu5wAu5wAu5wAu5wAu5wAu5wAu5wAu5wAu5w4Awa8AAAAFHRSTlMAB8BQEOgwIPCVPvqnYSUZA+HKcwRkwoYAAABOSURBVBjTfc45DsAwCETRwdnAa5b73zUFKTCO/MqvQQKjtQNQ2oxEoAAj/Idb6q5ODflph/pCie6Ec1wUaajNLS5xCynzPzgYTAB1MHgBho8Ci3BgkioAAAAASUVORK5CYII="
},{
    label:"檢看頁面源代碼(V)",
    command:"context-viewsource",
    image:"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAMAAAAoLQ9TAAAASFBMVEUAAADrTzjrTzjrTzjrTzjrTzjrTzjrTzjrTzjrTzjrTzjrTzjrTzjrTzjrTzjrTzjrTzjrTzjrTzjrTzjrTzjrTzjrTzjrTzg8D1VLAAAAF3RSTlMAK7AFCeq9cuNN+teqaVZAzpuGYjgWFdbiAS0AAABWSURBVBjTrYjHAcAgDANleifd+28aJzACeki6w6LoaAAiE/VkxQ065MZKT3YGkXfjhikfQ/EFMUVEYA/cKcv1HKTJcpUrtrIlDNO39KBPFqPoOP/BmryuNgM1ZpQxKAAAAABJRU5ErkJggg=="
    },
    ];
    
var menu = PageMenu({condition: '
normal', insertBefore: 'context-openlinkincurrent', image:"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAMAAAAoLQ9TAAAAhFBMVEXuWSHuYCv4+Pjv7+/s7OzpuqjqpYvqm33wdUjwaDXjx73nxLbreEzz8/P77uno6Ojh4eHy5N/23tX0yrrgxLnev7Pzwa7itaPwuKLotKHtspzhr5zlqJHumHfvk3Hmj27yhVzsglnxek3vckTuXSfuWyTuWiLlz8fmz8bdxr7nxrrqdUkaUO2HAAAAhklEQVQY042NRw7EIAxFbRggBNJ775l2//vNCISyzdvY/33JhjvI1W2rNGMOPZu9cLaTpKaRKbHNXpIMATAj5Q6GLQnq46iDZHPHRkqHgdLxetQ+/rQuoeALiyK2cIFGNIwr9Xx9FGeNEf4JItY6FnD6RuQaqx6gr/BrxfQuOgTArsgnuMEPaL4HF4FFOf4AAAAASUVORK5CYII=", onpopupshowing: syncHidden });
menu(items);
}

//隱藏相同項。必須,不能刪除
function syncHidden(event) {
    Array.slice(event.target.children).forEach(function(elem){
        var command = elem.getAttribute('
command');
        if (!command) return;
        var original = document.getElementById(command);
        if (!original) {
                elem.hidden = true;
                return;
        };
        elem.hidden = original.hidden;
        elem.collapsed = original.collapsed;
        elem.disabled = original.disabled;
    });
};

創作回應

更多創作