JavaScriptのきほん
clickイベントのthisはアロー関数では使えない
e.targetで受け取る
markup
//通常
<button id="func" value="button func">function(e)</button>
//アロー関数
<button id="arrow" value="button arrow">(e)=></button>
result <input type="text" id="result">
js
const result = document.getElementById("result");
//通常
const funcBtn = document.getElementById("func");
funcBtn.addEventListener("click", function (e) {
result.value = this.value;
});
//アロー関数
const arrowBtn = document.getElementById("arrow");
arrowBtn.addEventListener("click", (e) => {
result.value = e.target.value;
});
子要素のクリックでイベント発動させたくない場合は、e.currentTarget プロパティを使用。
取得したクラスのループ
const eles = document.getElementsByClassName(className);
for (var i = 0; i < eles.length; i++) {
eles[i].classList.remove("myChoice");
}