可以在IE11中运行userscript

时间:2014-07-31 12:47:33

标签: javascript internet-explorer userscripts

我有一个自定义用户脚本,我使用Tampermonkey / Greasemonkey在Chrome和Firefox中运行。

在IE11中有没有办法使用这个脚本?或者是否有IE11的插件可以执行Tampermonkey / Greasemonkey的操作?

5 个答案:

答案 0 :(得分:10)

TrixIE WPF4.5声称在IE11上模仿Greasemonkey。

不幸的是,the original Trixie and IE7Pro已停止使用IE8-ish。

答案 1 :(得分:1)

一个简单的Google搜索(我搜索过“formonmon for IE”)可以为其他浏览器提供各种替代方案:

http://en.wikipedia.org/wiki/Greasemonkey#Equivalents_for_other_browsers

  

对于Internet Explorer,IE7Pro,[19] Sleipnir,[20]和iMacros提供了类似的功能。

答案 2 :(得分:1)

Fiddler支持修改http请求的响应。
我们可以使用此功能在包括IE8在内的任何浏览器中加载用户脚本。

这是一个示例:

static function OnBeforeResponse(oSession: Session) {
    if (m_Hide304s && oSession.responseCode == 304) {
        oSession["ui-hide"] = "true";
    }
    // match url
    if (oSession.fullUrl == "http://apply.ccopyright.com.cn/goadatadic/getR11List.do") {
        oSession.utilDecodeResponse();
        var script = System.IO.File.ReadAllText("C:\\GitHub\\@selpic\\P660_printer\\Printer\\scripts\\form-save-load.js")
        oSession.utilReplaceOnceInResponse("</body>", "<script>"+script+"</script></body>", true);
    }
}

doc:Modifying a Request or Response

答案 3 :(得分:1)

我使用localStorage使其工作,这是IE8或更高版本的支持。

步骤:

  1. 当前窗口位于要在其中运行脚本的域中时,请在IE开发人员工具中运行以下代码:
var scriptName = 'Hello world';
function scriptBody(){
//---userscript starts--->

document.body.innerHTML = '<h1>Hello world!</h1>';

//---userscript ends--->
}
var script = scriptBody.toString()
  .split('//---userscript starts--->')[1]
  .split('//---userscript ends--->')[0];
localStorage.setItem(scriptName, script);
  1. 创建书签并将URL修改为:
javascript:(function(){eval(localStorage.getItem('Hello world'));})()

优势:

  • 不需要其他插件。
  • 几乎没有脚本文本的长度限制。

缺点:

  • 需要用户单击书签才能运行脚本。
  • 如果用户清除浏览器缓存,则需要重新安装。

答案 4 :(得分:-5)

只需打开开发人员工具(按F12)并将脚本粘贴到控制台,然后再运行(Ctrl + Enter)。