在原生js里,要系結點擊事件,首先要獲取它的標簽,獲取標簽的方法有很多,但不是每一種都可以系結點擊事件
1.先來寫一個div標簽
<body>
<div class="classA" id="idA">事件執行步驟</div>
</body>
2.這里獲取這個div標簽的方法有:
通過id獲取:document.getElementById('idA')
通過class獲取:document.getElementsByClassName('classA')
通過指定器直接獲取div標簽:直接獲取標簽的方法也有兩種
一個是直接獲取所有的div標簽
document.querySelectorAll('div')
一個是獲取body里面的第一個div標簽
document.querySelector('div')
document.querySelector('div')
const handelQSA = document.querySelectorAll('div')
const handelQS = document.querySelector('div')
const handelClass = document.getElementsByClassName('calssA')
const handelId = document.getElementById('idA')
3.通過js代碼系結點擊事件
handelQS.onclick = function () {
console.log('handelQSA事件被執行')
}
handelQS.onclick = function () {
console.log('handelQS事件被執行')
}
handelClass.onclick = function () {
console.log('handelClass事件被執行')
}
handelId.onclick = function () {
console.log('handelId事件被執行')
}
最后一個個的執行字寫代碼發現
只有第二個和第四個的點擊事件被執行了
原來:第一個獲取的是所有的div標簽,并不是唯一的,即使這里只有一個div,直接系結點擊事件還是不行的,雖然他不會報錯,
第二個獲取的是整個body中所有div的第一個div,是唯一的標簽,可以直接系結點擊事件,
第三個獲取的是整個body里面class為(classA)的標簽,不是唯一的,所以也不能直接系結點擊事件
第四個是通過id獲取標簽,id的值在每一個body里面都不能重復的,所以可以直接系結點擊事件
在最后總結,可以用指定器(querySelector),和id獲取標簽系結點擊事件,但指定器是第一個的,無法更加準確的系結點擊事件,所以通過id獲取標簽系結的點擊事件是最準確的,
document.getElementById('idA')
document.querySelector('#idA')
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/182872.html
標籤:python
上一篇:css入門學習筆記
下一篇:部分前端開發問題解決
