<a id="link_foo">Foo</a><a id="link_foo">Foo</a>
<script type="text/javascript">
function bindFooClick(){
$("#link_foo").click(function(){
console.log "asd"
});
}
bindFooClick();
bindFooClick();
bindFooClick();
bindFooClick();
</script>
然后去点击 Foo 这个连接,将会出现 4 个日志输出。
如果不小心这个事件绑定被搞得成倍增长了,那就等着暴掉吧。
所以需要在 bindFooClick
绑定事件前去掉之前的绑定
function bindFooClick(){
$("#link_foo").unbind("click");
$("#link_foo").bind("click", function(){
console.log "asd"
});
}
不知道 jQuery 有没有自带类似防止重复绑定事件的函数。