jquery on()方法是官方推薦的繫結事件的乙個方法。
$(selector).on(event,childselector,data,function,map)
由此擴充套件開來的幾個以前常見的方法有.
bind()
$("p").bind("click",function());
$("p").on("click",function());
delegate()
$("#div1").on("click","p",function());
$("#div2").delegate("p","click",function());
live()
$("#div1").on("click",function());
$("#div2").live("click",function());
以上三種方法在jquery1.8之後都不推薦使用,官方在1.9時已經取消使用live()方法了,所以建議都使用on()方法。
tip:如果你需要移除on()所繫結的方法,可以使用off()方法處理。
$(document).ready(function());
$("button").click(function());
});
tip:如果你的事件只需要一次的操作,可以使用one()這個方法
$(document).ready(function()); });});
trigger()繫結$(selector).trigger(event,eventobj,param1,param2,...)$(document).ready(function()); $("button").click(function());});
多個事件繫結同乙個函式$(document).ready(function());});
多個事件繫結不同函式
$(document).ready(function(), mouseout:function(), click:function() });});
繫結自定義事件
$(document).ready(function()); $("button").click(function());});
傳遞資料到函式
function handlername(event) $(document).ready(function(), handlername)});
適用於未建立的元素
$(document).ready(function()); $("button").click(function());});
jquery給動態元素繫結事件
在jquery中,我們經常使用 elem bind event,function 這種方式給元素繫結事件。在大部分情況下這種寫法無疑是適用的。然而,當頁面上原本不存在某些如button,select等元素,而是後期通過動態建立的方式建立出來的控制項,這種寫法,便不再適用了。selector on e...
jQuery動態新增的元素繫結事件
今天在做專案是時候發現動態新增的元素不能繫結事件,由於本人js和jquery技術有限,所以也不知道原因,一查才知道,動態新增的元素繫結事件就會失效,所以修改了一下。jquery中繫結事件一般使用bind,或者click,但是這只能是對已經載入好的元素定義事件,那些後來新增插入的元素則需要另行繫結。在...
Jquery 為動態新增元素繫結事件
有一段時間沒用jquery了,今天又碰到這個問題。當時是知道有livejquery可以解決。但是我並不喜歡為了這個而另外載入乙個。我當時的處理方法是在新增的時候手工繫結事件處理函式。不過新版的jquery已經新增了這個功能。我們已經不需要為此煩惱了。參考 以前我們定義事件,比如為元素定義單擊事件是這...