JavaScript阻止事件冒泡示例分享
之前遇到事件冒泡的問(wèn)題,也去網(wǎng)上搜索了一番,結(jié)果大部分都是一樣的代碼,貼來(lái)用時(shí)也不太順利。涉及到FF時(shí),可以用 e.stopPropagation(); ,不知怎地我沒(méi)用成功。不過(guò)我發(fā)現(xiàn)FF支持e.cancelBubble = true;的寫(xiě)法,經(jīng)測(cè)試可行。就把代碼貼在這里吧,省得以后到處找。IE以前版本的兼容性還沒(méi)測(cè)試,用到時(shí)再完善吧。
//取消事件冒泡
function stopBubble(e) {
var evt = (e) ? e : window.event;//兼容FF
evt.cancelBubble = true; //evt.stopPropagation(); FF下阻止冒泡,據(jù)說(shuō)可以用
};
另:
1、cancelBubble(HTML DOM Event 對(duì)象屬性) :如果事件句柄想阻止事件傳播到包容對(duì)象,必須把該屬性設(shè)為 true。
2、stopPropagation(HTML DOM Event 對(duì)象方法):終止事件在傳播過(guò)程的捕獲、目標(biāo)處理或起泡階段進(jìn)一步傳播。調(diào)用該方法后,該節(jié)點(diǎn)上處理該事件的處理程序?qū)⒈徽{(diào)用,事件不再被分派到其他節(jié)點(diǎn)。
3、 preventDefault(HTML DOM Event 對(duì)象方法)通知瀏覽器不要執(zhí)行與事件關(guān)聯(lián)的默認(rèn)動(dòng)作。
例子:
function stopBubble(e)
{
if (e && e.stopPropagation)
e.stopPropagation()
else
window.event.cancelBubble=true
}
把這個(gè)stopBubble(e)函數(shù)放到你想要的阻止事件冒泡函數(shù)里面就可以阻止事件冒泡了
相關(guān)文章
JavaScript異步編程操作實(shí)現(xiàn)介紹
異步(Asynchronous, async)是與同步(Synchronous, sync)相對(duì)的概念。在我們學(xué)習(xí)的傳統(tǒng)單線程編程中,程序的運(yùn)行是同步的,同步不意味著所有步驟同時(shí)運(yùn)行,而是指步驟在一個(gè)控制流序列中按順序執(zhí)行,而異步的概念則是不保證同步的概念2022-09-09
詳解js私有作用域中創(chuàng)建特權(quán)方法
這篇文章主要為大家詳細(xì)介紹了js私有作用域中創(chuàng)建特權(quán)方法,何為特權(quán)方法,特權(quán)方法就是有權(quán)訪問(wèn)私有變量和私有函數(shù)的公有方法,感興趣的小伙伴們可以參考一下2016-01-01
js實(shí)現(xiàn)文本框?qū)挾茸赃m應(yīng)文本寬度的方法
這篇文章主要介紹了js實(shí)現(xiàn)文本框?qū)挾茸赃m應(yīng)文本寬度的方法,可實(shí)現(xiàn)根據(jù)文本框內(nèi)容動(dòng)態(tài)改變寬度的功能,涉及javascript動(dòng)態(tài)操作頁(yè)面元素屬性的技巧,需要的朋友可以參考下2015-08-08
javascript游戲開(kāi)發(fā)之《三國(guó)志曹操傳》零部件開(kāi)發(fā)(一)讓靜態(tài)人物動(dòng)起來(lái)
首先來(lái)說(shuō),讓一個(gè)游戲賦有可玩性必須要?jiǎng)屿o結(jié)合,我將要在下面告訴大家如何運(yùn)用Javascript將靜態(tài)圖片變?yōu)閯?dòng)態(tài)圖片,感興趣的朋友可以了解下,便當(dāng)鞏固js知識(shí)了2013-01-01
使用JS+XML(數(shù)據(jù)島)實(shí)現(xiàn)分頁(yè))
使用JS+XML(數(shù)據(jù)島)實(shí)現(xiàn)分頁(yè))...2007-01-01
javascript實(shí)現(xiàn)簡(jiǎn)單頁(yè)面倒計(jì)時(shí)
這篇文章主要為大家詳細(xì)介紹了javascript實(shí)現(xiàn)簡(jiǎn)單頁(yè)面倒計(jì)時(shí),文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2021-03-03
五個(gè)基于JS實(shí)現(xiàn)的炫酷登錄頁(yè)面
本文為大家準(zhǔn)備了五個(gè)基于HTML+CSS+JS實(shí)現(xiàn)的酷炫登錄頁(yè)面的示例代碼,文中的頁(yè)面效果都很好看,需要的小伙伴可以參考一下2022-04-04
Javascript中匿名函數(shù)的多種調(diào)用方式總結(jié)
這篇文章主要是對(duì)Javascript中匿名函數(shù)的多種調(diào)用方式進(jìn)行了詳細(xì)的總結(jié)介紹。需要的朋友可以過(guò)來(lái)參考下,希望對(duì)大家有所幫助2013-12-12
JavaScript監(jiān)測(cè)ActiveX控件是否已經(jīng)安裝過(guò)的代碼
這是通用的方法,只需要把唯一的Activex的clsid和任意一個(gè)屬性或方法名傳進(jìn)來(lái)就可以判斷了。(找了兩個(gè)小時(shí)才找到 -_-!)2008-09-09

