使用$("#a").live()的函数时,却被chrome提示 Uncaught TypeError: $(...).live is not a function(…),网上搜了下,发现是因为jQuery 1.9版本之后不再支持.live函数,我的jQuery版本是1.11。

官方API文档说明如下

https://jquery.com/upgrade-guide/1.9/#live-removed

.live() removed

The .live() method has been deprecated since jQuery 1.7 and has been removed in 1.9. We recommend upgrading code to use the .on()method instead. To exactly match $("a.foo").live("click", fn), for example, you can write $(document).on("click", "a.foo", fn). For more information, see the .on() documentation. In the meantime, the jQuery Migrate plugin can be used to restore the .live() functionality.

因此,之前使用.live的写法如果是 $("a.foo").live("click", fn),那么要相应的改为 $(document).on("click", "a.foo", fn),其中fn是事件的回调函数。如果要保证老代码能正确运行,也可以使用jQuery的Migrate插件

 

posted on 2016-11-01 10:26  夕照_Joy  阅读(1795)  评论(0编辑  收藏  举报