这是“unsafeWindow is not Defined”的最佳搜索结果,所以我将回答这个问题,以解决我在 Chromium 中的 Tampermonkey 上遇到的问题:
unsafeWindow 不可用,如果
// @grant none
已使用。
https://github.com/Tampermonkey/tampermonkey/issues/412
创建新用户脚本时默认添加该行,因此您需要从
// ==UserScript==
标头块中删除它才能使用 unsafeWindow。
此外,您可以显式地将
// @grant unsafeWindow
添加到标题块,尽管这可能不是绝对必要的(取决于您用来加载用户脚本的内容)。
unsafeWindow
:
对象提供对Tampermonkey运行所在页面的unsafeWindow
对象的访问,而不是对Tampermonkey扩展的窗口对象的访问。这在某些情况下很有用,例如当用户脚本需要访问页面上定义的 JavaScript 库或变量时。window