情况描述:在页面中input 和 label 通过for banding 然后点击input 或者label的时候都要执行一个方法
但是在点击label的时候有两次执行两次的情况,及监听到的click---事件冒泡。
解决方案:1:不用label 2:解决它
这里提供一种时间戳的解决方案
页面HTML:
<span οnclick="checkremark(this)"> <input type="checkbox" id="checkbox5" /><label for="checkbox5">其他</label></span>
js:
var evTimeStamp = 0;
function checkremark(dom) {
var now = +new Date();
if (now - evTimeStamp < 100) {
return;
}
evTimeStamp = now;
var html = dom.children[1].innerHTML;
//这里写逻辑
}
时间小于100是自己设定的值,可以改。