简体   繁体   中英

Modify Javascript Variable Using Greasemonkey

Help, can anyone help me how to change javascript variable using greasemonkey?

I already following the answers on this question: How can I change a JavaScript variable using Greasemonkey?

and also this link: http://webdeveloper.com/forum/showthread.php?t=166658

but I unable to modify the counter variable value on the function with this script:

// ==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;

Here are the function that I want to change:

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;
    }
});
}

Thanks for helping, I already searching on google but still I can't modify the variable.

counter is a local variable within a function. You will not be able to change its value unless you can modify the function to use a global variable. If you do not have access to the code, you could try replacing the entire startTimer function with your own implementation. I can not tell from your example, but you can only replace startTimer if it is a global.

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM