Javascript 如何控制篡改猴子脚本';从浏览器';什么是JS控制台?
我用以下代码编写了一个Greasemonkey/Tampermonkey脚本:Javascript 如何控制篡改猴子脚本';从浏览器';什么是JS控制台?,javascript,console,greasemonkey,tampermonkey,Javascript,Console,Greasemonkey,Tampermonkey,我用以下代码编写了一个Greasemonkey/Tampermonkey脚本: var on = true; function doSomething(){ if(on){ //do stuff } } setInterval(doSomething,1000); 正常情况下,该函数处于活动状态,但在某些情况下,我想从浏览器中的javascript控制台禁用它。 我不想在网页上添加额外的切换按钮 我怎样才能做到这一点?在控制台中输入on=true,不起作用,因为on是
var on = true;
function doSomething(){
if(on){
//do stuff
}
}
setInterval(doSomething,1000);
正常情况下,该函数处于活动状态,但在某些情况下,我想从浏览器中的javascript控制台禁用它。
我不想在网页上添加额外的切换按钮
我怎样才能做到这一点?在控制台中输入
on=true
,不起作用,因为on
是“未定义的”。Greasemonkey和Tampermonkey
目标页面和JS控制台无法看到脚本范围中定义的变量和函数,但您的脚本可以将内容注入目标页面的范围
因此,将放在目标页面范围中的
变量上,然后可以从控制台控制该函数。在这种情况下,请使用
一个完整的Greasemonkey和Tampermonkey脚本可以做到这一点:
// ==UserScript==
// @name _Allow console control of Tampermonkey function
// @include http://YOUR_SERVER.COM/YOUR_PATH/*
// @grant unsafeWindow
// ==/UserScript==
unsafeWindow.on = true;
function doSomething () {
if (unsafeWindow.on){
//do stuff
}
}
setInterval (doSomething, 1000);
在控制台中,省略
取消安全窗口
。也就是说,您可以使用:
on = false;
// OR
on = true;
停止并启动该脚本的操作
请注意,在Chrome中,脚本必须在Tampermonkey中运行,而不是Chrome的原生用户脚本模拟。Greasemonkey和Tampermonkey 目标页面和JS控制台无法看到脚本范围中定义的变量和函数,但您的脚本可以将内容注入目标页面的范围 因此,将
放在目标页面范围中的
变量上,然后可以从控制台控制该函数。在这种情况下,请使用
一个完整的Greasemonkey和Tampermonkey脚本可以做到这一点:
// ==UserScript==
// @name _Allow console control of Tampermonkey function
// @include http://YOUR_SERVER.COM/YOUR_PATH/*
// @grant unsafeWindow
// ==/UserScript==
unsafeWindow.on = true;
function doSomething () {
if (unsafeWindow.on){
//do stuff
}
}
setInterval (doSomething, 1000);
在控制台中,省略
取消安全窗口
。也就是说,您可以使用:
on = false;
// OR
on = true;
停止并启动该脚本的操作
请注意,在Chrome中,脚本必须在Tampermonkey中运行,而不是在Chrome的本机userscript仿真中运行。不确定要在此处执行什么操作,但可以在脚本中添加一行:“debugger;”。当你在谷歌chrome开发工具(F12)中时,你可以刷新网页,脚本将在你有那行代码的地方停止。然后你可以打开JS控制台并在页面上编写“live”脚本。不确定你想在这里做什么,但你可以在脚本中添加一行:“debugger;”。当你在谷歌chrome开发工具(F12)中时,你可以刷新网页,脚本将在你有那行代码的地方停止。然后您可以打开JS控制台并在页面上编写“live”脚本。