可以在IE11中运行userscript
Possible to run userscript in IE11
我有一个自定义的用户脚本,我在Chrome和Firefox中使用Tampermonkey/Greasemonkey运行。
是否有任何方法在IE11中使用这个脚本?或者IE11有什么插件可以像Tampermonkey/Greasemonkey那样做吗?
TrixIE WPF4.5声称在IE11上模拟Greasemonkey
不幸的是,原来的Trixie和IE7Pro在ie8前后停止工作。
我使用localStorage使其工作,这是由IE8或更高版本支持的
步骤:
- 当当前窗口在您希望脚本运行的域中时,在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);
- 创建书签并将URL修改为:
- 几乎没有脚本长度限制。
- 需要用户点击书签来运行脚本。
- 如果用户清空浏览器缓存需要重新安装
javascript:(function(){eval(localStorage.getItem('Hello world'));})()
优势:
- 不需要额外的插件。
缺点:
一个简单的Google搜索(我搜索的是"greasemonkey for IE")可以得到其他浏览器的各种替代方案:
http://en.wikipedia.org/wiki/Greasemonkey Equivalents_for_other_browsers
对于Internet Explorer, IE7Pro,[19] Sleipnir,[20]和iMacros都提供了类似的功能。
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:修改请求或响应
只需打开Developer tools(按F12)并将脚本粘贴到Console,然后运行它(Ctrl + Enter)。
相关文章:
- 如何使用phaser使html5游戏在移动设备浏览器上运行
- 使用压缩的JavaScript文件(不是运行时压缩)
- Javascript运行php文件,然后下载文件
- chrome扩展:尽管运行了at:documentidle,js脚本还是过早启动
- 我已经创建了一个jquery转盘,并使用if条件来运行和停止转盘
- Angularjs代码未在匿名函数中运行
- jquery设置为使用参数运行
- 如何根据时间运行不同的脚本
- Meteor方法在客户端返回null,在客户端运行的相同方法返回正确的值
- 将文本框链接到由按钮运行的javascript公式
- 为什么不是't运行此Javascript的Chrome
- ng应用程序使脚本无限运行
- 如何在运行时在angular 2中加载外部js脚本
- 与运行长作业(javascript,node.js)的第三方API同步的最佳实践
- JavaScript错误:Microsoft JScript运行时错误:应为对象
- 在终端中运行 JavaScript 时(使用 rhino),如何使用 print() 函数在一行中打印
- 如何使用JS/nightwatchjs并行运行多个测试
- 茉莉花宝石-耙茉莉花:ci dons't运行测试
- 如何使此UserScript在IE10上运行
- 可以在IE11中运行userscript