【问题标题】:Check jQuery version and load and use later version if needed检查 jQuery 版本并在需要时加载和使用更高版本
【发布时间】:2010-11-03 20:38:21
【问题描述】:

我在门户环境中使用 jQuery。门户头文件正在加载 jQuery 1.4.2,并且还有其他使用该版本 jQuery 的 portlet。但是,我最近发现了一个在 jQuery 1.4.3 中修复的错误,所以我想将那个版本用于我的 portlet。

我知道如何检测 jQuery 版本。但是,我不确定如何动态加载更高版本的 jQuery,将其别名用于我的 portlet,然后将其更改回旧版本,以便稍后在与我的 portlet 相同的页面上加载的其他 portlet 不受影响。

我尝试了几种不同的方法,但都没有成功。基本上,我想要做的是动态加载 jQuery 1.4.3 并将其别名为 jQuery 变量,因此我的 portlet 中的所有代码都使用 1.4.3,然后在我的 portlet 结束时,将 jQuery 变量别名回 1.4。 2 因此任何以下 portlet 都使用该版本。

这可以吗?怎么样?

谢谢!

【问题讨论】:

    标签: jquery portlet


    【解决方案1】:

    在一个页面中使用多个版本是一个非常糟糕的主意,解决这个错误,不要尝试在一个页面上包含多个版本。

    对于初学者,您最初将覆盖 jQuery 对象(除非您修改 jQuery 核心)并丢失任何已定义的插件。

    【讨论】:

    • +1 这会产生非常不利的后果。我偶然做了一次,我无法确定我加载了哪个 jQuery 对象,所以在不同的时间我正在处理不同的 jQuery 对象。正如@Nick 所说,这可以并且将破坏插件。
    • 我很欣赏你的发言。不幸的是,这个 bug 就在 jQuery 本身,所以很难在我自己的代码中解决它。如果不使用两个版本的 jQuery,我还能做什么?
    • 我按照ticket中的说明解决了这个问题,但是修改jQuery核心代码感觉很恶心。
    猜你喜欢
    • 2015-05-24
    • 1970-01-01
    • 1970-01-01
    • 2016-03-28
    • 1970-01-01
    • 1970-01-01
    • 2016-10-22
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多