引用 1.9.1.min.js dom对象 没有live 绑定事件方法, 引用 1.7.js 就有live 绑定事件方法...

问题:
相同环境,引用 1.9.1.min.js
$('div[data-role="page"]').live('pagehide', function (event, ui) {
$(event.currentTarget).remove();
});
这个报错,提示 Uncaught TypeError: Object [object Object] has no method 'live'
而引用1.7就不会。
谁能解释一下,一般都是高版本兼容低版的。还是我下载的1.9.1.min.js 有问题。谁能提供一个没有这个BUG 1.9.1.min.js 文件。(我1.9.1.min.js 是在官网下载的)

解答:
这并不是 jQuery 的 bug。jQuery 1.9 较之前的版本做了很大的调整,很多函数都不被支持。

例如 live(),die(),toggle(),sub(),$.browser 等等都已经被移除,完整的更新内容见 http://jquery.com/upgrade-guide/1.9/ (英文)。

在不改变你网站代码的同时,要使用 1.9 之后的版本,你需要使用 jQuery Migrate(转移、过度),详见 http://blog.jquery.com/2013/01/31/jquery-migrate-1-1-0-released/ (英文)。

Migrate 应该只是暂时性的。为了和 jQuery 保持同步,建议你从现在开始根据 1.9 的改变重写你网站的所有代码。

所以之前你的代码如果是

$("#ele").live("click", function() {
//...
});

现在要写成

$("#ele").on("click", function() {
//...
});

动态生成的元素要使用 live,要写成

$(document).on("click", "#ele", function() {
//...
});

转载于:https://www.cnblogs.com/yun007/p/3724391.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值