Javascript Greasemonkey用户脚本更改/设置Java脚本中的变量

Javascript Greasemonkey用户脚本更改/设置Java脚本中的变量,javascript,greasemonkey,Javascript,Greasemonkey,我不知道这是否可行,但我想更改/设置webbrowser加载的值 在此脚本标记中设置变量: <script> Current.set('username','tomi'); Current.set('user_id','1234'); </script> 我如何操作这样的代码?你不能。Greasemonkey脚本在所有其他脚本和页面加载后执行。可能有一种更简单的方法,具体取决于实际的目标页面(指向它的链接)和您尝试执行的操作。但是,你可以随时使用。只需设置脚本 见和

我不知道这是否可行,但我想更改/设置webbrowser加载的值

在此脚本标记中设置变量:

<script>
Current.set('username','tomi');
Current.set('user_id','1234');


</script>

我如何操作这样的代码?

你不能。Greasemonkey脚本在所有其他脚本和页面加载后执行。

可能有一种更简单的方法,具体取决于实际的目标页面(指向它的链接)和您尝试执行的操作。但是,你可以随时使用。只需设置脚本

见和

在本例中,您将调用
checkForBadJavascripts()
,如下所示:

function changeUser () {
    Current.set('username', 'myname');
    Current.set('user_id', '1111');

    // ...
}

checkForBadJavascripts ( [
    [   false, 
        /username[\'\", ]+tomi/, 
        function () {addJS_Node (null, null, changeUser);} 
    ]
] );

*COPY checkForBadJavascripts.js contents here.*

有什么办法吗?这是出于安全考虑,@ValNolav。所以不,我不认为他的答案是双重错误的。默认情况下,Greasemonkey在页面完成加载之前运行。OP想要的通常也是可行的。我添加了你的代码,但是它不起作用。我正在设法解决这个问题。我检查它是否以文档开头,但它似乎是从文档结尾开始的,因为document.readyState:interactive。您已将此答案标记为已接受,但注释显示您的脚本不工作?你明白了吗?将脚本设置为在开始时运行;请阅读以上答案中的链接。如果它仍然不起作用,把你的完整脚本放在问题中或链接到它,我们会找出问题的症结。我同意你的答案,因为它是有意义的。我想对你的回答表示感谢。在我把它发到这里之前,我会再尝试几次。谢谢
function changeUser () {
    Current.set('username', 'myname');
    Current.set('user_id', '1111');

    // ...
}

checkForBadJavascripts ( [
    [   false, 
        /username[\'\", ]+tomi/, 
        function () {addJS_Node (null, null, changeUser);} 
    ]
] );

*COPY checkForBadJavascripts.js contents here.*