jQuery: 以类名获取对象,删除类名对事件的影响。

情景:html

<button class="btn-i">按钮1</button>
<button class="btn-ii">按钮2</button>
<script>
    $("btn-i").click(function(){
        alert(1);
    });
    $("btn-ii").click(function(){
        $("btn-i").removeClass("btn-i");
    });
</script>

操做步骤:java

1. 点击按钮1:固然输出1;学习

2. 点击按钮2:会去掉第一个button标签的类名(不信能够将代码赋值,测试,审查元素)测试

3.点击按钮1:仍是输出1code

会犯这种低级错误,我以为是没有系统学习javaScript,没有深刻,停留在表层使用htm

解决方法是:事件

<script>
    //解除时间的绑定
    $("btn-ii").click(function(){
        $("btn-i").unbind();    //完美解决
    });
</script>

估计也应该是:html页面在加载完成后节点就已经和事件绑定好了,类名只是一开始用来找出节点和对应时间绑定,绑定完他们就没用了。ip

在用jQuery的html()方法插html代码的时候就颇有这种感受,html里面写的类名是触发不了事件的,要用用on()方法rem

相关文章
相关标签/搜索