jquery加载时间问题

时间:2014-05-02 15:07:11

标签: javascript jquery

我遇到了获取jQuery和amp;的问题Bootstrap.js加载和播放很好。我可以将它们放在标题中并且它们工作正常,但我有一个“母版页”,它可以加载3个子表单。因此,在每个表单上,我需要确保jQuery& Bootstrap.js已加载,但我无法重新加载或导致问题。

所以,我创建了一个jsfiddle,我用它来确保jQuery被加载,然后检查是否加载了bootstrap.js(如果不加载则加载它)。问题是jQuery检查后的代码似乎在jQuery完成加载之前执行,尽管试图延迟以确保它没有。

以下是代码:

if(typeof jQuery=='undefined') {
    var headTag = document.getElementsByTagName("head")[0];
    var jqTag = document.createElement('script');
    jqTag.type = 'text/javascript';
    jqTag.src = '//code.jquery.com/jquery-2.0.3.min.js';
    jqTag.onload = myJQueryCode;
    headTag.appendChild(jqTag);
} else {
    alert('You are here')
    myJQueryCode();
}
function yourFunctionToRun(){
    //Your JQuery goodness here
}

function runYourFunctionWhenJQueryIsLoaded() {
    if (window.$){
        //possibly some other JQuery checks to make sure that everything is loaded here
        myJQueryCode();
    } else {
        setTimeout(function() {runYourFunctionWhenJQueryIsLoaded()}, 50);
    }
}

runYourFunctionWhenJQueryIsLoaded();
if(typeof jQuery=='undefined') {
    alert('Houston we have a problem');
}

以下是jsfiddle

基于这个小提琴,警告窗口永远不应该打开,因为在加载jQuery之前它不应该达到。

非常感谢任何帮助。

0 个答案:

没有答案