Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/variables/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在运行时使用greasemonkey更改javascript变量_Javascript_Variables_Firefox_Greasemonkey - Fatal编程技术网

在运行时使用greasemonkey更改javascript变量

在运行时使用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,但它不起作用,我不知道为什

我有一个页面里面有一个.js脚本, 在页面中

    <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