_ready_code

webix._ready_code([see official doc])

webix._ready_code helper.

Please look into the linked official documentation.

References

helpers
assert(), codebase(), delay(), event(), isArray().

External references

Official documentation page.

Code

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
webix._ready_code = [];

//autodetect codebase folder
(function(){
    var temp = document.getElementsByTagName("SCRIPT");    //current script, most probably
    webix.assert(temp.length,"Can't locate codebase");
    if (temp.length){
        //full path to script
        temp = (temp[temp.length-1].getAttribute("src")||"").split("/");
        //get folder name
        temp.splice(temp.length-1, 1);
        webix.codebase = temp.slice(0, temp.length).join("/")+"/";
    }

    var ready = function(){
        if(webix.env.isIE)
            document.body.className += " webix_ie";
        webix.callEvent("onReady",[]);
    };

    var doit = function(){
        webix._ready = true;

        //global plugins
        if (window.webix_ready && webix.isArray(webix_ready))
            webix._ready_code = webix_ready.concat(webix._ready_code);

        for (var i=0; i < webix._ready_code.length; i++)
            webix._ready_code[i].call();
        webix._ready_code=[];
    };

    webix.attachEvent("onReady", function(force){
        if (force)
            doit();
        else
            webix.delay(doit);
    });

    if (document.readyState == "complete") ready();
    else webix.event(window, "load", ready);

})();