在jquery中,因?yàn)樾枰诒贿x元素及子元素上添加一個(gè)或者多個(gè)事件處理程序,所以要用on()方法;該方法添加的事件處理程序適用于當(dāng)前及未來的元素,語法為“元素對(duì)象.on(event,子元素的事件處理程序,額外數(shù)據(jù),函數(shù))”。
本教程操作環(huán)境:windows10系統(tǒng)、jquery3.2.1版本、Dell G3電腦。
為什么用jquery的on
on() 方法在被選元素及子元素上添加一個(gè)或多個(gè)事件處理程序。
自 jQuery 版本 1.7 起,on() 方法是 bind()、live() 和 delegate() 方法的新的替代品。該方法給 API 帶來很多便利,我們推薦使用該方法,它簡(jiǎn)化了 jQuery 代碼庫(kù)。
注意:使用 on() 方法添加的事件處理程序適用于當(dāng)前及未來的元素(比如由腳本創(chuàng)建的新元素)。
提示:如需移除事件處理程序,請(qǐng)使用 off() 方法。
提示:如需添加只運(yùn)行一次的事件然后移除,請(qǐng)使用 one() 方法。
語法
$(selector).on(event,childSelector,data,function)
-
event 必需。規(guī)定要從被選元素添加的一個(gè)或多個(gè)事件或命名空間。由空格分隔多個(gè)事件值,也可以是數(shù)組。必須是有效的事件。
-
childSelector 可選。規(guī)定只能添加到指定的子元素上的事件處理程序(且不是選擇器本身,比如已廢棄的 delegate() 方法)。
-
data 可選。規(guī)定傳遞到函數(shù)的額外數(shù)據(jù)。
-
function 可選。規(guī)定當(dāng)事件發(fā)生時(shí)運(yùn)行的函數(shù)。
示例如下:
<html> <head> <script src="js/jquery.min.js"> </script> <script> $(document).ready(function(){ $("p").on("click",function(){ alert("段落被點(diǎn)擊了。"); }); }); </script> </head> <body> <p>點(diǎn)擊這個(gè)段落。</p> </body> </html>
輸出結(jié)果:
點(diǎn)擊段落后:
相關(guān)視頻教程推薦:jQuery視頻教程