【求助】如果更改火狐e10s下失效的脚本

读者在 小站不过 在8月份在本站投递的求助文,由于蚊仔这段时间没有照顾博客,导致这篇求助帖一直躺在审核列表里,没有发布。再次蚊仔表示歉意。虽说已经过去很长时间了,也不知道小站不过是否已经解决了这个问题。还是在此发出来。

// 右键点击链接新标签后台打开
(function() {
  var gTimer = null;

  function findLink(element) {
        // Super_start
        if (element.className == 'site-snapshot') {
            return element.parentNode;
        }
      
    switch (element.tagName) {
        case 'A': return element;

        case 'B': case 'I': case 'SPAN': case 'SMALL':
        case 'STRONG': case 'EM': case 'BIG': case 'SUB':
        case 'SUP': case 'IMG': case 'S':
        case 'FONT':
          var parent = element.parentNode;
          return parent && findLink(parent);

        default:
          return null;
    }
  }

  function click(element, view) {
    var e = document.createEvent('MouseEvents');
    e.initMouseEvent('click', true, true, view, 0,
                     0, 0, 0, 0, false, false, false, false, 0, element);
    return !element.dispatchEvent(e);
  }

  function openTab(href) {
    if ('TreeStyleTabService' in window)
      TreeStyleTabService.readyToOpenChildTab(gBrowser.selectedTab, false);
    return gBrowser.addTab(href);
  }


  function findFrames(frame) {
    var frames = frame.frames;
    var fs = {};

    for (var i = 0, len = frames.length; i  0 ? subX : (-subX)), (subY > 0 ? subY : (-subY))];
                var direction;
                if (distX > distY) direction = subX < 0 ? "L" : "R";
                else direction = subY < 0 ? "U" : "D";
                if (event.dataTransfer.types.contains("application/x-moz-file-promise-url")) {
                    if (direction == "D") {
                        //搜索相似图片(Google)
                        gBrowser.selectedTab = gBrowser.addTab("https://www.google.com/searchbyimage?image_url=" + encodeURIComponent(event.dataTransfer.getData("application/x-moz-file-promise-url")));
                        return;
                    }
                    if (direction == "U") {
                        //搜索相似图片(百度)
                        gBrowser.selectedTab = gBrowser.addTab("http://stu.baidu.com/i?rt=0&rn=10&ct=1&tn=baiduimage&objurl=" + encodeURIComponent(event.dataTransfer.getData("application/x-moz-file-promise-url")));
                        return;
                    }
                    if (direction == "L") {
                        //复制图片地址
                        Components.classes['@mozilla.org/widget/clipboardhelper;1'].createInstance(Components.interfaces.nsIClipboardHelper).copyString(event.dataTransfer.getData("application/x-moz-file-promise-url"));
                        return;
                    }
                    if (direction == "R") {
                        //下载图片
                        saveImageURL(event.dataTransfer.getData("application/x-moz-file-promise-url"), null, null, null, null, null, document);
                        return;
                    }
                } else if (event.dataTransfer.types.contains("text/x-moz-url")) {
                    if (direction == "U") {
                        //新标签打开链接(前台)
                        gBrowser.selectedTab = gBrowser.addTab(event.dataTransfer.getData("text/x-moz-url").split("n")[0]);
                        return;
                    }
                    if (direction == "D") {
                        //新标签打开链接(前台)
                        gBrowser.selectedTab = gBrowser.addTab(event.dataTransfer.getData("text/x-moz-url").split("n")[0]);
                        return;
                    }
                } else {
                    if (direction == "U") {
                        //baidu搜索选中文字(前台)[识别URL并打开]
                        /^s*(?:(?:(?:ht|f)tps?://)?(?:(?:w+?)(?:.(?:[w-]+?))*(?:.(?:[a-zA-Z]{2,5}))|(?:(?:d+)(?:.d+){3}))(?::d{2,5})?(?:/S*|$)|data:text/[u0025-u007a]+)s*$/.test(event.dataTransfer.getData("text/unicode")) && (gBrowser.selectedTab = gBrowser.addTab(event.dataTransfer.getData("text/unicode"))) || (gBrowser.selectedTab = gBrowser.addTab("https://www.baidu.com/s?wd=" + event.dataTransfer.getData("text/unicode")));
                        return;
                    }
                    if (direction == "D") {
                        //google搜索选中文字(前台)[识别URL并打开]
                        /^s*(?:(?:(?:ht|f)tps?://)?(?:(?:w+?)(?:.(?:[w-]+?))*(?:.(?:[a-zA-Z]{2,5}))|(?:(?:d+)(?:.d+){3}))(?::d{2,5})?(?:/S*|$)|data:text/[u0025-u007a]+)s*$/.test(event.dataTransfer.getData("text/unicode")) && (gBrowser.selectedTab = gBrowser.addTab(event.dataTransfer.getData("text/unicode"))) || (gBrowser.selectedTab = gBrowser.addTab("https://www.google.com/ncr#q=" + event.dataTransfer.getData("text/unicode")));
                        return;
                    }
                    if (direction == "L") {
                        //自定义搜索选中文字(前台)[识别URL并打开]
                        /^s*(?:(?:(?:ht|f)tps?://)?(?:(?:w+?)(?:.(?:[w-]+?))*(?:.(?:[a-zA-Z]{2,5}))|(?:(?:d+)(?:.d+){3}))(?::d{2,5})?(?:/S*|$)|data:text/[u0025-u007a]+)s*$/.test(event.dataTransfer.getData("text/unicode")) && (gBrowser.selectedTab = gBrowser.addTab(event.dataTransfer.getData("text/unicode"))) || (gBrowser.selectedTab = gBrowser.addTab("https://twitter.com/search?q=" + event.dataTransfer.getData("text/unicode")));
                        return;
                    }
                    if (direction == "R") {
                        //翻译(前台)[识别URL并打开]
                        /^s*(?:(?:(?:ht|f)tps?://)?(?:(?:w+?)(?:.(?:[w-]+?))*(?:.(?:[a-zA-Z]{2,5}))|(?:(?:d+)(?:.d+){3}))(?::d{2,5})?(?:/S*|$)|data:text/[u0025-u007a]+)s*$/.test(event.dataTransfer.getData("text/unicode")) && (gBrowser.selectedTab = gBrowser.addTab(event.dataTransfer.getData("text/unicode"))) || (gBrowser.selectedTab = gBrowser.addTab("https://translate.google.com/#auto/zh-CN/" + event.dataTransfer.getData("text/unicode")));
                        return;
                    }
                }
                self.startPoint = 0;
            }
        }
    }
})()

两个非常重要的脚本,不能使用了,希望有能力的朋友修改一下。谢谢!

知识共享许可协议作品采用CC 3.0许可协议进行许可。

原创文章,转载请注明: 转载自蚊仔部屋
本文链接地址: 【求助】如果更改火狐e10s下失效的脚本

发表评论

电子邮件地址不会被公开。 必填项已用*标注

想显示头像?本站支持Gravatar

Scroll Up