也可以移除事件指派或移除onclick事件属性,jquery当中可以用unbind方法移除。
js本身可以用removeEventListener方法进行删除
function handler() {console.log(this)
}
document.getElementById("myBtn").addEventListener("click", handler, false)
document.getElementById("myBtn").removeEventListener("click", handler, false)
这里注意移除的函数要跟绑定的相同,所以不能用匿名函数
用jquery的话,可以用.off()方法或.unbind()方法,具体使用方法查下jquery API就行了,这里就不赘述了
button{background:#fff
}
button.active{
background:red
}
假设上边的css表示button的俩种状态,正常状态和选中状态
<button type='button' id="btn">按钮</button>这个是按钮
var btn = document.getElementById('btn')btn.onclick=function(){//添加点击事件
if(btn.className.indexOf('active')){ //说明已经是选中状态
btn.className = ''//清空class。
}else{
btn.className = 'active'//否则选中它,给它添加active样式
}
}
//如果用jquery,会很方便实现
$('#btn').click(function(){//给id为btn的元素添加点击事件
$(this).toggleClass('active')//每次点击的时候,将当前的元素切换active样式
//如果有,则去掉,否则添加
})