iT邦幫忙

2022 iThome 鐵人賽

DAY 26
0

上一篇有說明可以透過事件了解當下的元素內容,而本篇要介紹的target與nodeName就是兩個常用的物件事件可搭配使用

本篇介紹內容:

  • node.Name取得屬性
  • e.target了解目前所在元素位置

node.Name取得屬性

瞭解目前 DOM 的 HTML 位置,依據節點類型返回名稱

<input class="btn" type="button" value="點擊">
const btn = document.querySelector(".btn");
console.log(btn.nodeName);

https://ithelp.ithome.com.tw/upload/images/20221002/20151124YEuaDfAOJP.png

e.target了解目前所在元素位置

使用e.target可知道我目前點擊的位置是什麼東西,常用於:點擊大範圍時,僅觸發部分內容

const btn = document.querySelector(".btn");
btn.addEventListener('click',function(e){
    console.log(e.target);
})

const list = document.querySelector(".list");
list.addEventListener('click',function(e){
    console.log(e.target);
})

https://ithelp.ithome.com.tw/upload/images/20221002/20151124HrgcuBLSs2.png

e.target 搭配 nodeName 節點

只要最外圍綁監聽其餘部分搭配屬性節點使用

const list = document.querySelector(".list");
list.addEventListener('click',function(e){
    console.log(e.target.nodeName); 
    if(e.target.nodeName == "INPUT" ){
	    console.log('已點擊');
	}	
})

https://ithelp.ithome.com.tw/upload/images/20221002/20151124V5ZXrVjFqH.png

只要在list中點擊都會觸發e.target.nodeName的事件,此外若e.target.nodeName抓取節點為INPUT時就會打印出’已點擊'


上一篇
【Day26】事件處理event-註冊、監聽
下一篇
【Day28】Node.js是什麼?
系列文
喜歡打程式嗎?從JavaScript基礎來進行興趣初探!30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言