我很好奇为什么当我将.live()
替换为.on()
我的事件在通过html()
方法插入AJAX的响应后无法工作。假设我有HTML结构:jquery:on vs live
<div class="a">
<a href="" class="alert-link">alert</a>
<a href="" class="ajax-update">update</a>
</div>
和jQuery代码是这样的:
$('.alert-link').on("click", function(){
alert('abc');
return false;
});
和Ajax的更新将触发请求,这反应会
警报 更新
和我会将其插入parent()
。然后再次按alert-link
将导致重定向到/
,但如果我将.on()
更改为.live()
,则会再次显示警报。我在这里错过了什么?我读过.on()
是替代.delegate()
和.live()
。
您正在使用哪个jQuery版本? – mowwwalker 2012-03-25 22:01:36
我不太清楚你在这里问的是什么警报更新,?你可以让一个jsfiddle向我们展示一个例子吗? – tkone 2012-03-25 22:01:46
[当在()上使用jQuery时,为什么要使用(document)与元素本身?](http:// stackoverflow。com/questions/9418991/when-using-jquery-on-why-use-document-vs-the-element-itself) – gdoron 2012-03-25 22:05:44