使用Greasemonkey修改Javascript变量

使用Greasemonkey修改Javascript变量,javascript,variables,greasemonkey,Javascript,Variables,Greasemonkey,帮助,有人能帮助我如何使用greasemonkey更改javascript变量吗 我已就这个问题回答了以下问题: 还有这个链接: 但我无法使用此脚本修改函数上的计数器变量值: // ==UserScript== // @name My Fancy New Userscript // @namespace http://use.i.E.your.homepage/ // @version 0.1 // @description enter something useful

帮助,有人能帮助我如何使用greasemonkey更改javascript变量吗

我已就这个问题回答了以下问题:

还有这个链接:

但我无法使用此脚本修改函数上的计数器变量值

// ==UserScript==
// @name       My Fancy New Userscript
// @namespace  http://use.i.E.your.homepage/
// @version    0.1
// @description  enter something useful
// @match      https://welcome.telkomhotspot.info/telkomhs/freemax/
// @copyright  2012+, You
// ==/UserScript==

unsafeWindow.counter = 1;
以下是我要更改的函数:

function startTimer(){
var counter = 20;
var wait = 0;
var displayCounter = true;
var startCounting = false;
$("#timerTransition").html(getLoadingCounter())
.everyTime(1000,function(i){
    if(wait==0){
        if(displayCounter){
            $("#loadingCounter").fadeOut(500,function(){
                $("#timerTransition").html(getTimerContainer(counter));
                $("#timerContainer").fadeIn(500,function(){
                    startCounting = true;
                });
            });
        }
        displayCounter = false;
        if(startCounting){
            counter = counter - 1;
            $("#counter").html(counter);
            if(counter == 0) {

                if(foundCookies){
                    $("#timerTransition").stopTime().html(getAuthCookiesLogin());
                }
                else{
                    $("#timerTransition").stopTime().html(getAuthButton());
                    $("#authBtnContainer").fadeIn(0).click(function(){
                        $(this).fadeOut(0);
                        closeAds();
                        openAuthForm();
                    });
                }
            }
        }
    }
    else{
        wait = wait-1;
    }
});
}

感谢您的帮助,我已经在google上搜索过了,但仍然无法修改变量。

计数器是函数中的局部变量。除非可以修改函数以使用全局变量,否则无法更改其值。如果您无法访问代码,可以尝试用自己的实现替换整个
startTimer
函数。我无法从您的示例中判断,但您只能在startTimer是全局变量时替换它。

计数器
是函数中的局部变量。除非可以修改函数以使用全局变量,否则无法更改其值。如果您无法访问代码,可以尝试用自己的实现替换整个
startTimer
函数。我无法从您的示例中判断,但您只能在startTimer是全局的情况下替换它。

如果您定义
unsafeWindow.counter
您还应该阅读
unsafeWindow.counter
所以将
counter
替换为
unsafeWindow.counter
无处不在。您的意思是,将所有
计数器
替换为
未安全窗口。计数器
?但我没有访问该文件的权限。我想从
counter=20修改计数器变量值带有
计数器=1
在一些网站上使用Greasemonkey,这样我可以更快地跳过计时器。你能告诉我怎么做吗?如果你定义
unsafeWindow.counter
,你也应该读
unsafeWindow.counter
,所以用
unsafeWindow.counter
替换
counter
。你的意思是用
unsafeWindow.counter
替换所有的
计数器吗?但我没有访问该文件的权限。我想从
counter=20修改计数器变量值带有
计数器=1
在一些网站上使用Greasemonkey,这样我可以更快地跳过计时器。你能告诉我怎么做吗?谢谢@mikerobi,我正在尝试用这个网站上的新简单脚本替换这个函数:。但是页面仍在调用
idconnect.js
文件上的
startTimer
函数。嗯,我必须说我对Greasemonkey还是新手。@yudayyy,我忘了提到,如果startTimer也是全局的,你只能替换它。所以,这意味着我不能覆盖
idconnect.js
上的函数,对吧?谢谢@mikerobi,我正在尝试用这个网站上的新简单脚本替换这个函数:。但是页面仍在调用
idconnect.js
文件上的
startTimer
函数。嗯,我必须说我对Greasemonkey还是新手。@yudayyy,我忘了提到,如果startTimer也是全局的,你只能替换它。所以,这意味着我不能覆盖
idconnect.js
上的函数,对吗?