jquery - js设置页面标题 - 获取网页title




旧版本与更新版本的jquery冲突 (2)

我困在jquery插件的一个主要问题。 我有一些与jQuery 1.7.1编写的代码,现在我开始使用引导,并需要1.9.1的jQuery插件或更高。

在包含此版本“ https://ajax.googleapis.com/ajax/libs/jquery/1.11.2/jquery.min.js ”后,我以前的功能停止工作。 然后我用了两个版本,但没有再次运气。

我不想重写我以前的代码,使其与新版本兼容。 请提供解决方案

我得到了很多错误:Uncaught TypeError:that.errorDialog.dialog不是一个函数,.live不是函数,.dialog没有定义,null错误。 我得到的代码与jQuery 1.7.1工作正常的错误

如何解决这个问题,请帮忙。

谢谢! 迪皮卡


你可以尝试加载只是较新版本的jQuery,然后加载jquery-migrate ,这将恢复一些旧的功能。 但是,不知道你的应用需要什么特定的功能,我不能确定这将解决问题。

https://cdnjs.cloudflare.com/ajax/libs/jquery-migrate/1.2.1/jquery-migrate.min.js

理想情况下,你应该确定依赖jQuery旧版本的代码,并更新它们以使用最新版本。 在一天结束的时候,jQuery的变化是有原因的。 新的实现你几乎肯定会更好。

如果你巧妙地决定更新你的代码,“ jQuery Core 1.9升级指南”可能是一个很好的开始


当你加载你的jQuery.xxjs时,它会覆盖现有的$和jQuery变量。 但它保留了它们的备份副本(在_$_jQuery )。 调用noConflict (true)你恢复的情况,因为它是在你的js包容之前!

noConflict()给你运行的实例(最后加载的),所以你可以用这种方式处理你的版本

恢复:

  • 原始页面加载他的“jquery.versionX.js”
  • $和jQuery属于versionX
  • 你打电话给你的“jquery.versionY.js”
  • 现在$和jQuery属于versionY,再加上属于versionX的_ $和_jQuery
  • var my_jQuery = jQuery.noConflict(true);
  • 现在$和jQuery属于versionX,_ $和_jQuery可能为null,而my_jQuery是versionY

如果您想恢复到特定版本,请在HTML中添加以下JavaScript代码。

<script type="text/javascript">
    if (jQuery.fn.jquery != "1.11.0")
        var jQuery_1_11_0 = $.noConflict(true);
</script>




jquery-plugins