我正在嘗試系結所有<a>元素以具有 onclick 功能。雖然變數a是 a,但當我嘗試在其中使用關鍵字this時,onclick它會回傳我的Window物件??。代碼:
<!DOCTYPE html>
<html lang="pl">
<head>
<meta charset='utf-8'>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<meta http-equiv='X-UA-Compatible' content='IE=edge'>
</head>
<body>
<div id="stages">
<div><p>Cz??? I</p></div>
<div><a data="audio/01-1-1.mp3">Rozdzia? 1</a><div></div><p>44:10</p></div>
<div><a data="audio/02-1-2.mp3">Rozdzia? 2</a><div></div><p>20:06</p></div>
<div><a data="audio/03-1-3.mp3">Rozdzia? 3</a><div></div><p>19:16</p></div>
<div><a data="audio/04-1-4.mp3">Rozdzia? 4</a><div></div><p>25:29</p></div>
<div><a data="audio/05-1-5.mp3">Rozdzia? 5</a><div></div><p>32:16</p></div>
<div><a data="audio/06-1-6.mp3">Rozdzia? 6</a><div></div><p>13:06</p></div>
<div><a data="audio/07-1-7.mp3">Rozdzia? 7</a><div></div><p>28:38</p></div>
<div><a data="audio/08-1-8.mp3">Rozdzia? 8</a><div></div><p>51:59</p></div>
</div>
<script>
const a = document.querySelector('#stages a')
console.log(a)
a.onclick = () => {
console.log(this);
}
</script>
</body>
</html>
uj5u.com熱心網友回復:
為了使用this,您需要創建一個常規匿名函式而不是箭頭函式。
const anchors = [...document.querySelectorAll("#stages a")];
anchors.forEach(a => {
console.log(a);
a.onclick = function () {
console.log(this);
};
});
uj5u.com熱心網友回復:
這很正常,因為您處于關閉視窗并且使用箭頭功能,如果您需要訪問您的元素,您可以像這樣向您的箭頭功能添加一個道具
<script>
const a = document.querySelector("#stages a");
console.log(a);
a.onclick = (e) => {
console.log(e.target);
};
</script>
轉載請註明出處,本文鏈接:https://www.uj5u.com/qukuanlian/471233.html
標籤:javascript html 点击
