jQueryphp
在jQuery1.7版本中html
bind() unbind() ,live() die(), on() off() ,delegate()瀏覽器
下面咱們給li元素添加事件函數
bind() 舊版寫法: 事件不能適用腳本建立的新元素性能
live() 舊版寫法: 適用腳本建立的新元素寫法,但性能極很差spa
on() 新版寫法,事件不能適用腳本建立的新元素(接收多個函數綁定)code
這三種方法都是基於要給添加事件的元素自己。htm
$("ul li").bind("click",function(){ alert("不響應事件!"); })
delegate() 新版寫法,適用腳本建立的新元素blog
$(".demonstrate").delegate("ul li","click",function(){ alert("響應事件!"); })
$(ele).on() ele 爲匹配元素的父元素. 適用於匹配選擇器的當前及將來的元素(好比由腳本建立的新元素)事件
$(".parent").on("click","ul li",function(e){ alert("響應"+e.type+"事件!"); });
但在jQuery1.8版本 統一爲on()方法綁定事件。無論是原來的仍是腳本建立的均可以綁定。
上面每一個方法後面使其對應的解除綁定的方法。用法相似。
jq還有一種解除綁定方法
removeAttr('onclick');刪除 attr("onclick","WdatePicker()");添加
js方法
attachEvent與addEventListener區別
適應的瀏覽器版本不一樣,同時在使用的過程當中要注意 attachEvent方法 按鈕onclick addEventListener方法 按鈕click 二者使用的原理:可對執行的優先級不同的事件進行操做: attachEvent方法,爲某一事件附加其它的處理事件。(不支持Mozilla系列) 也就說可綁定多個事件並都執行(順序最後到前) addEventListener方法 用於 Mozilla系列 綁定多個只執行最後一個 **綁定函數不要加括號
removeEventListener()解除綁定
借鑑文章http://www.phpvar.com/archives/2529.html
http://blog.163.com/wumingli456@126/blog/static/288964142010755811775/