的Greasemonkey和Tampermonkey,operate in separate scopes from the target page, and may use a sandbox as well.
目標頁面和JS控制檯無法看到在腳本範圍內定義的變量和函數,但你的腳本可以注入東西到目標頁面的範圍。
因此,將您的on
變量放置在目標頁面範圍內,然後可以從控制檯控制該功能。在這種情況下,請使用unsafeWindow
Doc來做到這一點。
一個完整的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);
從控制檯,省略unsafeWindow
。也就是說,您可以使用:
on = false;
// OR
on = true;
停止並啓動該腳本的操作。
需要注意的是,在Chrome中,腳本必須將在Tampermonkey,不是Chrome原生userscript仿真運行。
不確定你想在這裏做什麼,但是你可以在腳本中添加一行:「debugger;」。當你使用谷歌瀏覽器工具(F12)時,你可以刷新網頁,腳本將停在你有該線的地方。然後你可以在頁面上打開JS控制檯和腳本「live」。 – patchie