js取消气泡事件、阻止浏览器的默认行为
生活随笔
收集整理的這篇文章主要介紹了
js取消气泡事件、阻止浏览器的默认行为
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
1.阻止事件冒泡,使成為捕獲型事件觸發(fā)機制.
取消tr里面子元素響應tr定義的事件,在tr子元素里面禁止氣泡事件就可以,子元素事件中加入window.event.cancelBubble=true 即可! 例子:
表格行有一個單擊事件,例如:
<table><tr οnclick="alert('hello world')"><td><input type="button" value="增加" οnclick="alert('你好!')"/></td><td>111</td><td>222</td><td>333</td></tr>
</table>
上面的表格當點擊其它單元格時都會彈出“hello world”,怎樣讓點擊“增加”時不讓彈出這個警告框?
在td或者input元素的事件中加入“window.event.cancelBubble = true”即可。
例如:<td οnclick="window.event.cancelBubble=true;"><input type="button" value="增加" οnclick="alert('你好!')"/></td>
或者:<td><input type="button" name="add" οnclick="alert('你好!');window.event.cancelBubble=true;"/></td>
多瀏覽器支持:
取消tr里面子元素響應tr定義的事件,在tr子元素里面禁止氣泡事件就可以,子元素事件中加入window.event.cancelBubble=true 即可! 例子:
表格行有一個單擊事件,例如:
<table><tr οnclick="alert('hello world')"><td><input type="button" value="增加" οnclick="alert('你好!')"/></td><td>111</td><td>222</td><td>333</td></tr>
</table>
上面的表格當點擊其它單元格時都會彈出“hello world”,怎樣讓點擊“增加”時不讓彈出這個警告框?
在td或者input元素的事件中加入“window.event.cancelBubble = true”即可。
例如:<td οnclick="window.event.cancelBubble=true;"><input type="button" value="增加" οnclick="alert('你好!')"/></td>
或者:<td><input type="button" name="add" οnclick="alert('你好!');window.event.cancelBubble=true;"/></td>
多瀏覽器支持:
function stopBubble(e){
if(document.all)
window.event.cancelBubble=true; //IE
else
e.stopPropagation(); //支持火狐
}
或者
function?stopBubble(e) {
//如果提供了事件對象,則這是一個非IE瀏覽器 if?( e && e.stopPropagation ) ???? //因此它支持W3C的stopPropagation()方法 ??? ? e.stopPropagation(); else ???? //否則,我們需要使用IE的方式來取消事件冒泡 ???? window.event.cancelBubble = true; } ? 2、阻止瀏覽器的默認行為 function stopDefault( e ) { ???? //阻止默認瀏覽器動作(W3C) ??? ?if ( e && e.preventDefault ) ??????? ?e.preventDefault(); ???? //IE中阻止函數器默認動作的方式 ??? ?else ??????? ?window.event.returnValue = false; ??? ?return false; }轉載于:https://www.cnblogs.com/guijl/archive/2013/01/17/2864961.html
總結
以上是生活随笔為你收集整理的js取消气泡事件、阻止浏览器的默认行为的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 基于交换芯片的五元组的PCL规则过滤功能
- 下一篇: windows7/windows10 虚