• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            逛奔的蝸牛

            我不聰明,但我會很努力

               ::  :: 新隨筆 ::  ::  :: 管理 ::
            事件傳遞機制:
            例如鼠標被按下后,mousedown事件被觸發。
            事件先從document->ancestor element->...->parent->event.target(在此元素上按下的鼠標)->parent->...->ancestor element->document.
            事件走了一個循環,從documet到event.target再回到document,從event.target到document的過程叫做冒泡。

            event.stopPropagation(); // 事件停止冒泡到,即不讓事件再向上傳遞到document,但是此事件的默認行為仍然被執行,如點擊一個鏈接,調用了event.stopPropagation(),鏈接仍然會被打開。

            event.preventDefault(); // 取消了事件的默認行為,如點擊一個鏈接,鏈接不會被打開,但是此事件仍然會傳遞給更上一層的先輩元素。

            在事件處理函數中使用 return false; 相當于同時調用了event.stopPropagation()和event.preventDefault(),事件的默認行為不會被執行,事件也不會冒泡向上傳遞。

            新的添加事件機制使用el.addEventListener('click', function(event){}, false);
            第三個參數是true或者false,一般都是使用false. 這個bool變量指示事件是使用capture還是bubble方式來處理。true表示使用捕捉方式,false使用冒泡方式,大多數情況下也是使用冒泡方式。
            <div>
                   <a >Navigate to Apple</a>
            </div>
            如上兩個元素div和a,a是div的孩子元素,他們都使用了addEventListener注冊了click事件。
            <body>
                <div id="myDiv">
                <a id="apple">Go to Apple</a>
                </div>
            </body>

                    document.getElementById("myDiv").addEventListener("click", function(event) {
                        console.log("click on div");
                    }, false);
                   
                    document.getElementById("apple").addEventListener("click", function(event) {
                        event.preventDefault();
                        console.log("click on a");
                    }, false);

            如果在myDiv上的第三個參數使用false, 則點擊鏈接后鏈接的click事件函數先執行,再執行myDiv的click事件處理函數。而如果使用的是true,則使用捕捉方式,所以myDiv的click事件處理函數先執行。

            posted on 2010-06-20 23:35 逛奔的蝸牛 閱讀(1256) 評論(0)  編輯 收藏 引用 所屬分類: 其他編程
            国产99久久精品一区二区| 99久久免费国产精精品| 人妻精品久久久久中文字幕| 久久99九九国产免费看小说| 无码国内精品久久人妻蜜桃| 精品久久久久久国产牛牛app| 久久久亚洲AV波多野结衣| 国产精品久久久久久久午夜片| 区久久AAA片69亚洲 | 久久久久亚洲?V成人无码| 久久亚洲日韩精品一区二区三区| 久久久亚洲精品蜜桃臀 | 91精品日韩人妻无码久久不卡| 久久精品综合网| 久久精品亚洲福利| 久久精品成人国产午夜| 亚洲国产精品久久久天堂| 久久九色综合九色99伊人| 国产一级做a爰片久久毛片| 久久精品亚洲AV久久久无码| 最新久久免费视频| 亚洲精品国精品久久99热| 久久国产视屏| 久久精品国产亚洲Aⅴ香蕉 | 免费精品久久久久久中文字幕| 国产99久久精品一区二区| 97超级碰碰碰久久久久| 91精品国产综合久久婷婷| 久久免费视频观看| 一本伊大人香蕉久久网手机| 日本免费久久久久久久网站| 日本三级久久网| 久久九九免费高清视频| 麻豆久久久9性大片| 久久精品一区二区三区AV| 久久久无码一区二区三区 | 久久精品无码专区免费| 亚洲欧美国产日韩综合久久| 久久久亚洲裙底偷窥综合| 亚洲精品乱码久久久久久按摩| 漂亮人妻被黑人久久精品|