原本主题用的是1.8.3版的jQuery插件,升级到1.11.1之后得换掉live方法为on方法。
.live()方法在jQuery1.9版本已经被移除。官方推荐使用.on()方法,有两个原因:

原因一

.on()方法可以绑定动态添加到页面元素的事件,之前大多数同学都习惯于用.bind()、.live()或.delegate(),其实.on()方法可以看作前三者的综合。

原因二

.on()方法绑定事件可以提升效率。不详细解释,可以自己做一个对比的测试。


jquery on方法

其实刚开始我对live方法根本一窍不通,后面跳到on方法后才去学习这个东西。

 $(selector).on(event,childSelector,data,function,map)

这里有个子父节点的问题,原本用.live()方法绑定ajax点击事件时是这样的:

$('.nav-menu a,.post-header a').live('click',
function() {
    // ajax函数
});

而用.on()方法就必须这样:

$(document).on('click','.nav-menu a,.post-header a',
function() {
    // ajax函数
});

其中body是一个父级或其以上的节点,也恰好是这个东西瞎搞了我半天功夫,子节点是动态的,如果不进行详细定义,那么点击事件就没法绑定。明白之后就简单了,不然心里总寻思着换jQuery的版本。