jquery click 多次绑定,多次触发,怎么清除历史绑定事件

 最近在用jquery对一个页面超链接元素进行click事件绑定,绑定调用方法如下:

[javascript]  view plain copy
  1. function OpenUrl(url){   
  2.     $("a[rel='xggl']").click(function () {  
  3.        window.open(url,"_blank");  
  4.     }  
  5. }  

第一次点击超链接,一切正常,第二次点击超链接,竟然打开两个窗口,再次打开,打开的窗口越来越多,怎么回事呢?

显然,click事件是append 的 而不是replace。抓紧翻阅jquery的api【http://visualjquery.com/】,很幸运找到了一个函数unbind,代码修改如下:

[javascript]  view plain copy
  1. function OpenUrl(url){   
  2.        <span style="color:#FF6666;"> $("a[rel='xggl']").unbind('click');</span>  
  3.     $("a[rel='xggl']").click(function () {  
  4.        window.open(url,"_blank");  
  5.     }  
  6. }  

再次运行程序,一切ok!!!!

你可能感兴趣的:(jquery click 多次绑定,多次触发,怎么清除历史绑定事件)