jquery on不可用的解決方法:先開啟對應的程式碼檔案;然後修改寫法為「$(document).on("click",".test",function(){alert(". ..");});」即可。
本教學操作環境:windows10系統、jquery1.7,本文適用於所有品牌的電腦。
推薦:《jquery教學》
#jQuery on() 綁定無效的解決方案
on() 方法在被選元素及子元素上新增一個或多個事件處理程序。
自 jQuery 版本 1.7 起,on() 方法是 bind()、live() 和 delegate() 方法的新的替代品。官網也推薦我們使用該方法,它簡化了 jQuery 程式碼庫。
$(selector).on(event,childSelector,data,function,map)
參數 | 描述 |
---|---|
event | 必要。規定要從被選元素移除的一個或多個事件或命名空間。 由空格分隔多個事件值。必須是有效的事件。 |
childSelector | 可選。規定只能加入指定的子元素上的事件處理程序(且不是選擇器本身,例如已廢棄的 delegate() 方法)。 |
data | #可選。規定傳遞到函數的額外資料。 |
function | 可選。規定當事件發生時運行的函數。 |
map | #規定事件映射({event:function, event:function, ...}),包含要新增至元素的一個或多個事件,以及當事件發生時執行的函數。 |
當是最近在工作中就遇到使用on( ) 無效。如果是載入頁面時候,被選元素及子元素就已經存在的話,是可以正常使用,寫法一般如下:
$(".test").on("click",function(){ alert("执行了"); });
當是如果被選元素及子元素在載入頁面時不存在,而是透過函數生成的話就有問題。按上面的寫法寫的話任何事件通過on()都綁定不了。
解決方法如下:
$(document).on("click",".test",function(){//修改成这样的写法 alert("生成的也可以执行了!"); });
以上是jquery on不可用怎麼辦的詳細內容。更多資訊請關注PHP中文網其他相關文章!