我有一组这样的项目:
<label for="Cadenza-1" class="cars">
<input type="checkbox" value="1" alt="Cadenza" id="Cadenza-1" name="vehicles[]">
<img src="img/bill_murray_173x173.jpg">
<span>Cadenza</span>
</label>
大约有13个。我想在单击时向标签添加一个类。但是,单击事件会触发两次。现在我正在调试单击事件,然后我将添加该类:
var cars = document.getElementsByClassName('cars');
for(var c = 0;c < cars.length; c++){
cars[c].addEventListener("click", function(e){
selectVehicle(cars[c],e);
},false);
}
function selectVehicle(el,e) {
console.log(e);
e.stopPropagation();
}
The console.log
发射两次。
尝试在 stopPropagation 之后添加 PreventDefault:
function selectVehicle(el,e) {
console.log(e);
e.stopPropagation();
e.preventDefault();
}
我相信最好将 console.log(e) 放在 stopPropogation 和 PreventDefault 之后。然后,您还需要实现将复选框设置为选中的功能,因为这会阻止这种情况发生。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)