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

时间:2012-05-11 13:26:05

标签: javascript greasemonkey

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

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

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


</script>

我尝试了这样的事情,显然并且正如预期的那样,以下代码行不起作用:

unsafeWindow.Current.set('username', 'myname');
unsafeWindow.Current.set('user_id', '1111');

我该如何操纵这样的代码?

2 个答案:

答案 0 :(得分:1)

可能有一种更简单的方法,具体取决于实际目标页面(链接到它)以及您要执行的操作。但是,您始终可以使用the checkForBadJavascripts utility。只需设置脚本to run at document-start

请参阅this answerthis answer

在这种情况下,您可以这样调用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.*

答案 1 :(得分:0)

你做不到。 Greasemonkey脚本在所有其他脚本之后以及页面加载后执行。