Javascript:检测JS库的加载顺序

Javascript:检测JS库的加载顺序,javascript,jquery,prototypejs,conflict,Javascript,Jquery,Prototypejs,Conflict,我有一个带有Jquery和已加载原型的页面。(我不知道顺序,无法控制此页面) 或 稍后在同一页中,我可以嵌入自己的代码。我需要知道加载这两个库的顺序。例如,如果先加载原型库,则执行此操作,否则执行此操作 如何使用jQuery或纯javascript实现这一点?这应该会有所帮助 if (jQuery === $) { alert("jQuery later"); } else { alert("Prototype later");

我有一个带有Jquery和已加载原型的页面。(我不知道顺序,无法控制此页面)



稍后在同一页中,我可以嵌入自己的代码。我需要知道加载这两个库的顺序。例如,如果先加载原型库,则执行此操作,否则执行此操作

如何使用jQuery或纯javascript实现这一点?

这应该会有所帮助

    if (jQuery === $) {
        alert("jQuery later");
    }
    else {
        alert("Prototype later");
    }
这应该会有所帮助

    if (jQuery === $) {
        alert("jQuery later");
    }
    else {
        alert("Prototype later");
    }

如果您需要防止jQuery和prototype之间的冲突,那么无论它们加载的顺序是什么:

jQuery.noConflict(); //will return $ to what it had been before jQuery was added
(function ($) {
  //jQuery aliased to $ for use within anonymous closure
}(jQuery));

jQuery(function ($) {
  //jQuery aliased to $ for use within $(document).ready shortcut
});

如果您需要防止jQuery和prototype之间的冲突,那么无论它们加载的顺序是什么:

jQuery.noConflict(); //will return $ to what it had been before jQuery was added
(function ($) {
  //jQuery aliased to $ for use within anonymous closure
}(jQuery));

jQuery(function ($) {
  //jQuery aliased to $ for use within $(document).ready shortcut
});

为什么哪一个是第一个重要?您可以等待文档准备就绪,也可以简单地获取数组中的所有脚本元素,然后循环找出javascript中首先出现的元素。如果先加载哪个很重要,那么你不想使用jQuery,而是纯javascript。如果你能解释为什么顺序很重要,你会得到一个更好的答案为什么先加载哪个很重要?您可以等待文档准备就绪,也可以简单地获取数组中的所有脚本元素,然后循环找出javascript中首先出现的元素。如果先加载哪个很重要,那么你不想使用jQuery,而是纯javascript。如果你能解释为什么顺序很重要,你会得到更好的答案。我不知道你的情况如何,但当在jQuery lib和jQuery.noConflict()之后加载prototype lib时,我页面上的原型代码不起作用在那之后叫。我自己也在玩这个,发现了装载顺序的问题。您可以在此处看到更多信息:,并向下滚动到“在其他库之前包含JQUERY”我不知道您的情况如何,但当在JQUERY库之后加载prototype库时,我页面上的prototype代码不起作用,然后调用JQUERY.noConflict()。我自己也在玩这个,发现了装载顺序的问题。您可以在此处看到更多信息:,并向下滚动到“在其他库之前包含JQUERY”