<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    魚躍于淵

    First know how, Second know why !
    posts - 0, comments - 1, trackbacks - 0, articles - 49

    為什么用 addEventListener

    • 可以對(duì)同一物件的同一事件綁定多個(gè)事件處理程序。
    • 可以通過事件流三個(gè)階段更好地控制何時(shí)觸發(fā)事件處理程序。
    • 工作于 DOM 元素,而不僅是 HTML 元素。

    事件分發(fā)時(shí)添加 eventListener

    不會(huì)立即觸發(fā) eventListener,可能會(huì)在下一個(gè)事件流(比如冒泡階段)中觸發(fā)。

    多個(gè)相同的 eventListener

    如下,三個(gè)參數(shù)完全相同,并且第二個(gè)參數(shù)不是匿名函數(shù)。

    document.getElementById("myBox").addEventListener("click", Go, false);
    document.getElementById("myBox").addEventListener("click", Go, false);
    document.getElementById("myBox").addEventListener("click", Go, false);

    會(huì)拋棄多余的,只保留一個(gè),對(duì)應(yīng)的 removeEventListener 也只用一次就可以了(removeEventListener 用法和 addEventListener 完全相同)。

    但如果是第二個(gè)參數(shù)是匿名函數(shù),比如:

    document.getElementById("outDiv").addEventListener("click", function () { document.getElementById("info").innerHTML += "1";}, false);
    document.getElementById("outDiv").addEventListener("click", function () { document.getElementById("info").innerHTML += "1";}, false);
    document.getElementById("outDiv").addEventListener("click", function () { document.getElementById("info").innerHTML += "1";}, false);

    則三個(gè)均有效,并且無法用 removeEventListener 除去。

    this

    事件處理程序中,this 變成了觸發(fā)事件的控件,但我們?nèi)酝扑]用 event.target 或 event.currentTarget。

    早期的事件監(jiān)聽

    在 DOM0 中,我們用 obj.onclick = FuncName,由于兼容性好,應(yīng)用非常廣泛,只是功能不如 addEventListener 強(qiáng)大。

    內(nèi)存問題

    前面提到了許多使用域名函數(shù)的地方,有時(shí)這是沒辦法的,請(qǐng)參見在各瀏覽器中動(dòng)態(tài)添加事件-參數(shù)篇,但這會(huì)導(dǎo)致內(nèi)存問題。

    一旦事件綁定之后,該綁定代碼作用域的變量就都保留下來,不會(huì)被 JavaScript 引擎回收,這可能會(huì)引起占用大量?jī)?nèi)存的問題,由于 removeEventListener 無法刪除匿名函數(shù)的事件處理程序,只有在物件(比如按鈕)去除之后,該內(nèi)存才可能得到回收。

    主站蜘蛛池模板: a在线视频免费观看在线视频三区 a毛片成人免费全部播放 | 亚洲狠狠ady亚洲精品大秀| 亚洲国产精品成人精品软件| a级毛片免费完整视频| 最近免费中文字幕mv电影| 亚洲情a成黄在线观看动漫尤物| 91免费国产视频| 久久国产精品亚洲一区二区| 亚洲欧洲无码AV不卡在线| 中国一级毛片视频免费看| 中文字幕第一页亚洲| 中文字幕成人免费高清在线视频| 丝袜熟女国偷自产中文字幕亚洲| 成人av片无码免费天天看| 亚洲综合另类小说色区| 久久久久久成人毛片免费看| 亚洲最新永久在线观看| ssswww日本免费网站片| 国产精品亚洲精品日韩已满| 久久99免费视频| 亚洲日本在线观看视频| 亚洲欧美不卡高清在线| 免费二级毛片免费完整视频| 一级一看免费完整版毛片| 久久亚洲AV无码精品色午夜麻| 91在线老王精品免费播放| 亚洲AV色吊丝无码| 亚洲第一区精品观看| 亚洲欧美日韩综合久久久| 国产gav成人免费播放视频| 99热在线日韩精品免费| 亚洲国产美女精品久久| 国产又大又长又粗又硬的免费视频 | 久久久久亚洲av无码专区| 国产免费av片在线看| 免费夜色污私人影院网站| 亚洲va无码手机在线电影| 免费无码午夜福利片| 亚洲AV无码乱码国产麻豆| 人妻视频一区二区三区免费| 国产亚洲综合视频|