首頁  >  文章  >  web前端  >  js阻止預設事件與js阻止事件冒泡範例分享 js阻止冒泡事件

js阻止預設事件與js阻止事件冒泡範例分享 js阻止冒泡事件

jacklove
jacklove原創
2018-06-15 16:48:221617瀏覽

巢狀的p元素,如果父級和子元素都綁定了一些事件,那麼在點擊最內層子元素時可能會觸發父級元素的事件,下面介紹一下js阻止預設事件與js阻止事件冒泡範例,大家參考使用吧
1. event.preventDefault();  – 封鎖元素的預設事件。
附註:a元素的點擊跳躍的預設事件,
button,radio等表單元素的預設事件,
p 元素沒有預設事件
範例:

<a href="http://www.baidu.com" target="_black">百度</a>var samp = document.getElementByTagName("a");
samp.addEventListener("click",function(e){e.preventDefault()},false);

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

  1. event.stopPropagation();  – 阻止元素冒泡事件
    註:巢狀元素一般都存在冒泡事件,會帶來某些影響
    例:

<p id="c1" onclick="alert(1)">
<p id="c2" onlick="alert(2)">
<input type="button" id="c3" value="点击" onclick="alert(3)">
</p>
</p>

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

document.getElementById(&#39;c3&#39;).addEventListener(&#39;click&#39;,function(e){e.stopPropagation()},false);

嵌套的p元素,如果父級和子元素都綁定了一些事件,那麼在點擊最內層子元素時可能會觸發父級元素的事件,以下介紹一下js阻止預設事件與js阻止事件冒泡範例,大家參考使用吧
1. event.preventDefault();  – 封鎖元素的預設事件。
附註:a元素的點擊跳躍的預設事件,
button,radio等表單元素的預設事件,
p 元素沒有預設事件
範例:

<a href="http://www.baidu.com" target="_black">百度</a>var samp = document.getElementByTagName("a");
samp.addEventListener("click",function(e){e.preventDefault()},false);

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

  1. event.stopPropagation();  – 阻止元素冒泡事件
    註:巢狀元素一般都存在冒泡事件,會帶來某些影響
    例:

<p id="c1" onclick="alert(1)">
<p id="c2" onlick="alert(2)">
<input type="button" id="c3" value="点击" onclick="alert(3)">
</p>
</p>

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

document.getElementById(&#39;c3&#39;).addEventListener(&#39;click&#39;,function(e){e.stopPropagation()},false);

本文講解了js阻止預設事件與js阻止事件冒泡範例分享js阻止冒泡事件,更多相關內容請關注php中文網。

相關推薦:

js函數常見的寫入方法以及呼叫方法

原生JS的AJAX讀取json全過程

vue.js安裝與設定

#

以上是js阻止預設事件與js阻止事件冒泡範例分享 js阻止冒泡事件的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn