include jQuery into javascript and use it in imacros ?

macroscripts picture macroscripts · Jul 20, 2012 · Viewed 9.5k times · Source

I want to know how can I include jQuery library into javascript and use it in iMacros?

It goes like this. Into .js file I declare iMacros code as a variable

var someMacro;
someMacro ="CODE:";
someMacro +="TAB T=1 \n";

The code is actually larger and this is just small example. After I declared the variable I use commands like iimPlay, iimSet etc. to play the macro and set the variables inside the macro.

Now how can I include jQuery library into this so that I can use jQuery inside .js file and enhance my scripts ?

P.S. I found this on their forum but it didn't help me much since I didn't understand how to use it. Here is the link Link to iopus forum about jQuery

Answer

cyxou picture cyxou · Nov 22, 2013

I've come with this this solution:

function loadScriptFromURL(url) {
    var request = Components.classes['@mozilla.org/xmlextras/xmlhttprequest;1'].createInstance(Components.interfaces.nsIXMLHttpRequest),
        async = false;
    request.open('GET', url, async);
    request.send();
    if (request.status !== 200) {
        var message = 'an error occurred while loading script at url: ' + url + ', status: ' + request.status;
        iimDisplay(message);
        return false;
    }
    eval(request.response);
    return true;
}

// load JQuery
loadScriptFromURL('http://mysupersecret.blob.core.windows.net/share/jquery-2.0.3.min.js');
$ = window.$,
JQuery = window.JQuery;

Trying to get jQuery from it's official CDN, I faced with the "setTimeout is undefined" error in iMacros. So I downloaded jQuery and modified setTimeout method to be window.setTimeout. This worked for me and so I had to place jQuery in my online shared location to use it from there. Hope this helps.