从jQuery 1.x升级到jQuery 2.x

前端之家收集整理的这篇文章主要介绍了从jQuery 1.x升级到jQuery 2.x前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我试图从jQuery 1.x升级到jQuery 2.x.

我有jQuery 1.8和jQueryUI 1.8,现在我想升级到jQuery 2.x和增强我的网络应用程序。

所以我的问题是要改变和删除,像Ajax和事件。

像这些错误,我在说

Uncaught TypeError: Object [object Object] has no method 'live'

像.on()和.ajax()函数是否改变任何? (我知道.live被弃用)。

P.S。我必须添加Zurb Foundation 5,它使用jQuery 2。

解决方法

>不要在位置属性中使用偏移选项,例如代码:$ element.position({my:’center center’,at:’center center’,offset:’5 -10′})中心5中心-10′})。
>不要使用$ element.bind(),$ element.live(),$ element.delegate()来分配事件处理程序,使用$ element.on()。
>不要使用浏览器嗅探与$ .browser,尝试使用功能检测($ .support)。
>不要使用deferred.isRejected(),deferred.isResolved(),而是使用deferred.state()。不要使用deferred.pipe(),应该使用deferred.then()方法
>不要使用$ elements.size()方法,而应使用$ elements.length属性。 .size()方法功能上等同于.length属性;然而,.length属性是优选的,因为它不具有函数调用的开销。
> .trigger()ed“click”事件中的复选框/无线电状态现在具有与用户启动的操作相同的状态。
>更改了.data()键的命名约定,例如,ui-dialog而不是dialog。 ( http://jqueryui.com/upgrade-guide/1.9/#changed-naming-convention-for-data-keys)。
>不要使用$ .ui.contains(),而是使用$ .contains()。
>每个widget实例已经有唯一的标识符this.uuid和事件命名空间this.eventNamespace =“。 this.widgetName this.uuid。不要手动生成类似的东西。
>不要使用$ element.focus(n) – 它已被弃用。使用setTimeout(function(){$ element.focus();},n);.
>不要使用$ element.zIndex() – 它已被弃用。
>不要使用$ .ui.keyCode.NUMPAD_ *常数 – 它们被删除
>不要使用$ element.data(‘someWidget’)来检索widget实例。使用instance()方法:$ element.someWidget(‘instance’)。与其他插件方法不同,instance()方法可以安全地调用任何元素。如果元素不是给定小部件的实例,该方法返回undefined:$(‘< div>< / div>‘)。dialog(‘instance’)/ *返回undefined而不是抛出Error * /。

原始升级指南和完整的更改列表:

> jQuery Core 1.9 Upgrade Guide
> jQuery UI 1.9 Upgrade Guide
> jQuery UI 1.10 Upgrade Guide
> jQuery UI 1.11 Upgrade Guide

原文链接:https://www.f2er.com/jquery/185049.html

猜你在找的jQuery相关文章