各要素に関数をアタッチするのは正しい方法ですか?そして、私の機能は大丈夫ですか?は、各要素に関数を取り付ける正しい方法です
<ul id='forShopping'>
<li><input class='ch' type='checkbox' onclick='isActive()'> Air-freshener</input></li>
<li><input class='ch' type='checkbox' onclick='isActive()'> Pampers</input></li>
<li><input class='ch' type='checkbox' onclick='isActive()'> Newspapper</input></li>
<li><input class='ch' type='checkbox' onclick='isActive()'> Toilet paper</input></li>
</ul>
function isActive() {
let elem = document.getElementsByTagName('input');
for(let i=0; i<elem.length; i++){
if(elem[i].checked == true){
elem[i].parentNode.style.backgroundColor = 'forestGreen';
}else{
elem[i].parentNode.style.backgroundColor = 'white';
}
}
}
このように動作しますが、正しくはわかりません。
使用 'this'をスニペットと現在の要素を参照します。ループのために使用する必要があります – Mahi
ありがとうございました! –