1

可能重复:
Jquery 的向后兼容性有多好?

我正在开发和管理一段时间的购物网站。

刚开始时,我们使用了 jQuery,它当时是 1.2.6 版,直到最近才看到需要升级。

我现在遇到错误,由于某些更改,由于 NDA,我无法在此处披露,并且想用更新的版本(即 1.7.x)试试我的运气

它是否完全向后兼容,是否有从旧版本迁移的指南?

或者更好的是,有人可以指出可能的问题点吗?

编辑:为了说明这一点,我已经在暂存区尝试了 1.7。不太明显的部分:错误消失了,我想进一步测试,但测试时间很宝贵(而且是无偿的,不用说),所以我问你们。

4

5 回答 5

3

最显着的向后不兼容是.prop在 1.6.x 中的引入,它破坏了.attr 1的一些用途

自 1.4 以来,我一直在广泛使用 jQuery(尽管不如你的 1.2),并且不记得任何其他实际破坏代码的更改。

还有一些功能已弃用,但不一定已删除(请参阅http://api.jquery.com/category/deprecated/)。

jQuery 团队也已经宣布了他们计划在 1.8 中弃用的东西的计划,并可能在 1.9 中完全删除(例如$.browser


1一些人.attr用来访问某些数据,这些数据是 DOM 对象的严格属性,而.attr应该反映从服务器下载的实际元素。例如,.attr('checked')告诉你一个复选框最初是否被选中,而.prop('checked')告诉你它当前是否被选中。

于 2012-07-02T13:49:01.483 回答
1

好吧,jQuery 并不完全向后兼容:也许您会发现类似的讨论很有帮助。如果您的 JS 代码库已经显示错误,我会说这一举动绝对值得。

于 2012-07-02T13:30:05.117 回答
0

Drupal 6 提供了开箱即用的 jQuery 1.2,而 jQuery 更新模块只能升级到 jQuery 1.3,因为有些东西在其他方面被破坏了。

您真的应该在您的环境中进行测试,没有人可以回答您。

于 2012-07-02T14:42:12.627 回答
0

一般来说,升级 jquery 比使用旧版本的新代码更容易,因为大多数旧功能或行为只是被弃用但没有被删除。建议保持最新状态,因为旧版本中也存在更多安全问题。但无论如何,你必须期待错误......

于 2012-07-02T13:42:06.750 回答
-4

您应该更新 jQuery,因为版本号越高,其中的错误越少,并且速度越快。

但我认为它可能会导致问题。例如,某些插件不适用于某些版本。

于 2012-07-02T13:32:54.067 回答