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

相關文章
相關標籤/搜索