最近在使用jQuery的時候遇到一個小問題:jquery on事件無效,總是無法進行綁定。
首先,我們來回顧一下jQuery的on事件。on()是jQuery的事件綁定方法,其使用方法一般為:$(selector).on(event,function)。其中,selector是需要綁定事件的元素,event是需要綁定的事件類型,function是事件觸發(fā)時的響應函數(shù)。
那么,當我們使用上述代碼時,發(fā)現(xiàn)on事件并沒有進行綁定。這是為什么呢?
$(document).ready(function(){ $("p").on("click",function(){ alert("click");//這里不會執(zhí)行 }); });
首先,需要確定jQuery庫是否已經(jīng)引入。如果沒有引入jQuery庫,那么無論怎么使用on事件都是無效的。
其次,on事件一般用于綁定動態(tài)生成的元素,如果你想對一個不存在的元素進行on事件的綁定,那么on事件也是無效的。在這種情況下,推薦使用$(document).on()來代替$(selector).on()。
$(document).ready(function(){ $(document).on("click","p",function(){ alert("click");//這里會執(zhí)行 }); });
最后一個可能導致on事件無效的原因是:在on事件綁定之前,元素已經(jīng)被綁定過相同的事件。這種情況下,我們可以使用off()方法來取消之前的事件綁定,然后再重新綁定on事件。
$(document).ready(function(){ $("p").off("click").on("click",function(){ alert("click");//這里也會執(zhí)行 }); });
總的來說,jQuery on事件無效可能是由多種原因?qū)е碌模覀冃枰鶕?jù)具體情況排查。以上方法只是其中的一部分,對于其他問題,我們需要在具體情況下進行判斷和解決。
上一篇瀏覽器css兼容性標志
下一篇jquery on 代理