jquery TypeError: $(...).live is not a functio,动态添加class的点击事件处理

jq版本更新后无live函数的处理.TypeError: $(...).live is not a function

jquery live函数语法
jquery版本更新, 发现一个问题: jq自带的live没有了.
控制台下会有如下的提示:
火狐: TypeError: $(...).live is not a function

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


网上的一个说法: 
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() {
    //...
});

posted @ 2016-12-01 15:49  Sugata  阅读(390)  评论(0编辑  收藏  举报