DIV CSS 佈局教程網

 DIV+CSS佈局教程網 >> 網頁腳本 >> JavaScript入門知識 >> JavaScript基礎知識 >> js阻止默認事件與js阻止事件冒泡示例分享 js阻止冒泡事件
js阻止默認事件與js阻止事件冒泡示例分享 js阻止冒泡事件
編輯:JavaScript基礎知識     

1. event.preventDefault();  -- 阻止元素的默認事件。
注:a元素的點擊跳轉的默認事件 ,

button,radio等表單元素的默認事件 ,

div 元素沒有默認事件

例:
復制代碼 代碼如下:
<a href="http://www.baidu.com" target="_black">百度</a>

復制代碼 代碼如下:
var samp = document.getElementByTagName("a");
samp.addEventListener("click",function(e){e.preventDefault()},false);

解釋:點擊鏈接的時候正常情況下會發生跳轉,但是現在我們阻止了它的默認事件,即跳轉事件,這時就不會跳轉到百度了。


2. event.stopPropagation();  -- 阻止元素冒泡事件

注:嵌套元素一般都存在冒泡事件,會帶來某些影響

例:
復制代碼 代碼如下:
<div id="c1" onclick="alert(1)">
<div id="c2" onlick="alert(2)">
<input type="button" id="c3" value="點擊" onclick="alert(3)">
</div>
</div>

這裡點擊button的時候,浏覽器會先後彈出3,2,1,本來只想讓綁定在button上的事件發生,卻無意中觸發了它的兩個父級上的事件,這裡我們只是做了一個簡單測試,試想如果在項目開發中,某個按鈕和他的父級同時綁定了很重要的事件,那麼結果會慘不忍睹。這時的處理方法就是阻止冒泡事件。

給input注冊click事件,同時阻止它的冒泡事件
復制代碼 代碼如下:
document.getElementById('c3').addEventListener('click',function(e){e.stopPropagation()},false);

OK!!!了

 PS:這裡再為大家推薦一款關於JS事件的在線查詢工具,歸納總結了JS常用的事件類型與函數功能:

javascript事件與功能說明大全:

http://tools.jb51.net/table/javascript_event

XML學習教程| jQuery入門知識| AJAX入門| Dreamweaver教程| Fireworks入門知識| SEO技巧| SEO優化集錦|
Copyright © DIV+CSS佈局教程網 All Rights Reserved