給元素綁定click事件 ,但是遇到一個問題 就是 當我執行一些ajax請求後 這個click事件就失效了
比如說 我的分頁是一個ajax請求 但我點下一頁時 後生成的元素a就沒有了click事件了
其實 原因很簡單
ajax加載內容是在$(document).ready()之後的操作,這個時候給綁定函數的時候,找到的元素集合中還不包括ajax加載的內容,所以原來的沒有問題,後加載的就沒有綁定
解決方法 有兩個 :
1. 在ajax請求成功之後重新綁定
2. 用live方法
代碼如下:
<script type="text/javascript">
<!--
jQuery(document).ready(function(){
jQuery(".brand li img").live('click',function(){
jQuery(this).parents("li").find("ul").slideToggle();
});
});
-->
</script>
兩種方法適用在不同的場合
如果是處理事件的話 可以用live
如果是其他一些處理方法的 live就不支持 只能重新綁定