最近學習了target屬性,是真的強大,可以不使用for()循環(huán)或者數組forEach()去判斷我點擊或者我需要找的是哪個元素,直接使用target點擊就可獲取。
接下來說說target哪里強大。
先看看target是什么意思
target 事件屬性可返回事件的目標節(jié)點(觸發(fā)該事件的節(jié)點),如生成事件的元素、文檔或窗口。
我認為target事件就是會自動判斷我們點的是哪個元素,我給大家舉個簡單的例子
<ul>
<li>今天6.11</li>
<li>明天6.12</li>
<li>后天6.13</li>
</ul>
<script>
var ul = document.getElementsByTagName('ul');
ul[0].onclick = function (e) {
var event = e || window.event;
var tar = event.target || event.srcElement;
//判斷我們點擊的節(jié)點名是否和li相等,如果相等,則提示我們
if(tar.nodeName==='LI'){
console.log("你剛剛點擊了我");
//打印我們點擊的節(jié)點和節(jié)點內容
console.log(tar);
}else{
console.log('你沒有點擊我');
}
}
</script>
當我們的鼠標點擊第一個li時,會提示“你剛剛點擊了我”,并打印<li>今天6.11</li>

1.png
當我們的鼠標點擊第二個li時,會提示“你剛剛點擊了我”,并打印<li>今天6.12</li>

2.jpg
當我們的鼠標點擊第三個li時,會提示“你剛剛點擊了我”,并打印<li>今天6.13</li>

3.jpg
還有各個屬性,說幾個比較常用的
獲取文本內容:tar.textContent
獲取父級節(jié)點:tar.parentNode
獲取節(jié)點名稱:tar.nodeName
需要注意,使用target獲取到的節(jié)點名稱全部為大寫
這就是他的強大的地方,會根據我們鼠標點擊的元素來返回相應的數據,幫助我們更快的獲取該屬性,感興趣的朋友可以試試。