在运行时使用greasemonkey更改javascript变量
我有一个页面里面有一个.js脚本, 在页面中在运行时使用greasemonkey更改javascript变量,javascript,variables,firefox,greasemonkey,Javascript,Variables,Firefox,Greasemonkey,我有一个页面里面有一个.js脚本, 在页面中 <script> Client.includeJS( 'js/scratchticket.js' ); </script> 所以我在greasemonkey中测试了各种代码,但是我不能编辑这个变量,比如200 我试着用adblock阻止scratchticket.js,并将整个代码粘贴到greasemonke脚本中并更改var,但它不起作用,我不知道为什
<script>
Client.includeJS(
'js/scratchticket.js'
);
</script>
所以我在greasemonkey中测试了各种代码,但是我不能编辑这个变量,比如200
我试着用adblock阻止scratchticket.js,并将整个代码粘贴到greasemonke脚本中并更改var,但它不起作用,我不知道为什么页面上会说加载。。。在它应该执行代码的时候
你知道如何用另一种方式改变变量吗 您需要提供更多信息和代码,以便获得适当的答案。了解userscript何时运行以及是否有任何授权非常重要
如果您只想更改JS代码设置初始值,请考虑侦听BeaScript执行事件。触发时,您必须首先确定事件目标是否是您要查找的脚本。然后可以搜索并替换所需的JavaScript行。您必须取消原始脚本的执行,并将修改后的代码插入到DOM中的新标记中,因为您无法直接操作加载的脚本。
问题实际上是@Quasimodo上面的克隆答案在执行时完全错误,相反 引用他引用的维基: 文档结束是Greasemonkey始终具有的标准行为。如果未提供任何值,则这是默认值 因此,对于那些刚开始使用userscripts的人来说,您的问题可能是最常见的,因为您的脚本执行得太晚,您只需要在顶部添加以下指令:// @run-at document-start
试试看它是否有用 代码在一个框架内,当我点击一个链接时会打开这个框架。GM脚本默认为@runat document start see官方网站,目前显然已关闭。这是在执行任何站点之前,因此您可以使用上述方法。GM也默认在帧中执行用户脚本。
// @run-at document-start