亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

JavaScript的事件監(jiān)聽(tīng)你了解嗎

 更新時(shí)間:2022年03月07日 16:47:31   作者:CSPsy  
這篇文章主要為大家詳細(xì)介紹了JavaScript的事件監(jiān)聽(tīng),文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來(lái)幫助

1. 什么是事件監(jiān)聽(tīng) ?

事件監(jiān)聽(tīng)就是計(jì)算機(jī)對(duì)事件進(jìn)行監(jiān)聽(tīng),知道什么時(shí)候發(fā)生了這個(gè)事件,從而執(zhí)行一些寫(xiě)好的程序。

那么,它的常用方法有哪些呢 ?讓我們一起來(lái)看看吧 !

2. DOM0 級(jí)事件監(jiān)聽(tīng)

DOM0 級(jí)事件監(jiān)聽(tīng):

給元素設(shè)置它們的onxxx屬性(e.g., onclick)

對(duì)于 DOM0 級(jí)事件監(jiān)聽(tīng) ,它只能監(jiān)聽(tīng)冒泡階段

2.1) 常見(jiàn)的頁(yè)面事件監(jiān)聽(tīng)

事件名事件描述
onload當(dāng)頁(yè)面或圖像被完成加載
onunload當(dāng)用戶退出頁(yè)面

2.2) 常見(jiàn)的鼠標(biāo)事件監(jiān)聽(tīng)

事件名事件描述
onclick當(dāng)鼠標(biāo)單擊某個(gè)元素
ondblclick當(dāng)鼠標(biāo)雙擊某個(gè)元素
onmousedown當(dāng)鼠標(biāo)按鍵在某個(gè)元素上按下
onmouseup當(dāng)鼠標(biāo)按鍵在某個(gè)元素上松開(kāi)
onmousemove當(dāng)鼠標(biāo)按鍵在某個(gè)元素上移動(dòng)
onmouseenter當(dāng)鼠標(biāo)移動(dòng)到某個(gè)元素上
(進(jìn)入到某個(gè)元素區(qū)域時(shí))
onmouseleave當(dāng)鼠標(biāo)離開(kāi)某個(gè)元素

其中onmouseenteronmouseover類(lèi)似,onmouseleaveonmouseout類(lèi)似;

它們兩者的區(qū)別:onmouseenteronmouseleave事件不支持冒泡,另外兩個(gè)支持事件冒泡;

所以,onmouseenteronmouseleave搭配使用,onmouseoveronmouseout搭配使用

2.3) 常見(jiàn)的鍵盤(pán)事件監(jiān)聽(tīng)

事件名事件描述
onkeypress當(dāng)鍵盤(pán)上的某個(gè)按鍵被按下
(系統(tǒng)按鍵無(wú)法識(shí)別 e.g.,F(xiàn)1 這類(lèi)的按鍵)
onkeydown當(dāng)鍵盤(pán)上的某個(gè)按鍵被按下
(系統(tǒng)按鍵可以識(shí)別,并且先于onkeypress發(fā)生)
onkeyup當(dāng)鍵盤(pán)上的某個(gè)按鍵被松開(kāi)

2.4) 常見(jiàn)的表單事件監(jiān)聽(tīng)

事件名事件描述
oninput當(dāng)用于正在修改表單域的內(nèi)容
onchange當(dāng)用戶改變了表單域的內(nèi)容
onfocus當(dāng)元素獲得焦點(diǎn)
(e.g.,tab鍵或鼠標(biāo)點(diǎn)擊)
onblur當(dāng)元素失去焦點(diǎn)
onsubmit當(dāng)表單被提交
onreset當(dāng)表單被重置

3. DOM2 級(jí)事件監(jiān)聽(tīng)

DOM2 級(jí)事件監(jiān)聽(tīng):

EventTarget.addEventListener()方法將指定的監(jiān)聽(tīng)器注冊(cè)到EventTarget上,當(dāng)該對(duì)象觸發(fā)指定的事件時(shí),指定的回調(diào)函數(shù)就會(huì)被執(zhí)行。

它有著幾種寫(xiě)法,想了解別的寫(xiě)法可以看看 MDN 官方文檔,這里介紹的寫(xiě)法如下:

  • type:表示監(jiān)聽(tīng)事件類(lèi)型的字符串
  • listener:事件監(jiān)聽(tīng)函數(shù)
  • useCapture:當(dāng)寫(xiě)true時(shí),進(jìn)行的是事件捕獲階段,默認(rèn)為false,事件冒泡階段
EventTarget.addEventListener(type, listener, useCapture);

對(duì)于常用的type:即把常用的 DOM0 級(jí)的onxxxon去掉后就可以了,即原來(lái)的事件名。

例如:

target.addEventListener('click', () => {
	console.log("我被點(diǎn)擊了");
});
// 這里第三個(gè)參數(shù)沒(méi)寫(xiě),默認(rèn)監(jiān)聽(tīng)冒泡階段,如果要監(jiān)聽(tīng)捕獲階段,寫(xiě)上 true

總結(jié)

本篇文章就到這里了,希望能夠給你帶來(lái)幫助,也希望您能夠多多關(guān)注腳本之家的更多內(nèi)容!     

相關(guān)文章

最新評(píng)論