文档章节

阻止事件冒泡和浏览器的默认行为

JellyFlower
 JellyFlower
发布于 2014/06/27 13:55
字数 244
阅读 548
收藏 10

javascript

1.阻止事件冒泡,使成为捕获型事件触发机制.

function stopBubble(e) { 
//如果提供了事件对象,则这是一个非IE浏览器
if ( e && e.stopPropagation ) 
 //因此它支持W3C的stopPropagation()方法 
 e.stopPropagation();
 else
    //否则,我们需要使用IE的方式来取消事件冒泡 
    window.event.cancelBubble = true;
  }

2.当按键后,不希望按键继续传递给如HTML文本框对象时,可以取消返回值.即停止默认事件默认行为.

//阻止浏览器的默认行为 
function stopDefault( e ) { 
    //阻止默认浏览器动作(W3C) 
    if ( e && e.preventDefault ) 
        e.preventDefault(); 
    //IE中阻止函数器默认动作的方式 
    else
        window.event.returnValue = false; 
    return false; 
 }

jQUERY

jQuery事件中

return false等效于同时调用e.preventDefault()和e.stopPropagation()

 即除了阻止默认行为之外,还会阻止事件冒泡。如果手上有一份jquery源代码的话,可查看其中有如下代码:

if (ret===false){
  event.preventDefault();
  event.stopPropagation();
}



© 著作权归作者所有

共有 人打赏支持
JellyFlower
粉丝 11
博文 27
码字总数 17068
作品 0
长春
私信 提问
js阻止冒泡和阻止浏览器的默认行为

防止冒泡 举一个例子,就是在子元素当中触发click事件,它的父元素有click事件的话,也会被触发,我们就需要用event.stopPropagation来防止冒泡。Ie使用的是cancelBubble,w3c使用的是stopP...

南蓝NL
2017/12/22
0
0
javascript对象--8 事件

事件对象 :在执行响应对象函数前由浏览器创建的对象。该对象封装了本次事件的基本信息以及处理事件流的方法。(在DOM标准中规定的事件对象的功能较少,因此哥哥浏览器都做了扩充,因此很多事...

奋斗的小芋头
2016/12/06
6
0
JavaScript事件机制——记一次认真准备的技术分享

先问几个问题,你是否能快速闪过答案? 自下而上(冒泡)事件怎么写,自上而下(捕获)又是怎么写? 捕获型和冒泡型同时存在,谁生效? jquery的on或bind是冒泡,还是捕获? 冒泡能够阻止,那...

闲淡超人
06/20
0
0
js阻止浏览器的默认行为以及停止事件冒泡(用JQuery实现回车提交,兼容IE、FF浏览器) ...

在前端开发工作中,由于浏览器兼容性等问题,我们会经常用到“停止事件冒泡”和“阻止浏览器默认行为”。 1.阻止浏览器的默认行为 [java] function stopDefault(e) { //如果提供了事件对象,...

java_T
2012/07/13
0
0
jquery 事件冒泡的介绍以及如何阻止事件冒泡

什么是JS事件冒泡? 在一个对象上触发某类事件(比如单击onclick事件),如果此对象定义了此事件的处理程序,那么此事件就会调用这个处理程序,如果没有定义此事件处理程序或者事件返回true,...

furw
2015/08/07
0
0

没有更多内容

加载失败,请刷新页面

加载更多

Yearning基于Inception的开源SQL审核平台

基础环境: python3 nodejs vuejs mysql python-ldap pymysql mysql 新建数据库 create database Yearning DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci; Navicat导入初始化数据 : ......

以谁为师
20分钟前
1
0
flutter Expanded用法

使用的地方:一个分类,类似京东的,左右两边都可以滑动 Widget build(BuildContext context) { return Row(children: [ Column( children: <Widget>[ Ex......

大灰狼wow
25分钟前
3
0
Java8 Map中新增的方法使用总结

前言 得益于 Java 8 的 default 方法特性,Java 8 对 Map 增加了不少实用的默认方法,像 getOrDefault, forEach, replace, replaceAll, putIfAbsent, remove(key, value), computeIfPresent,......

kaixin_code
34分钟前
2
0
@TransactionConfiguration

@TransactionConfiguration过时与替代写法 @TransactionConfiguration 替代写法

miaojiangmin
37分钟前
0
0
浅谈Vue响应式(数组变异方法)

很多初使用Vue的同学会发现,在改变数组的值的时候,值确实是改变了,但是视图却无动于衷,果然是因为数组太高冷了吗? 查看官方文档才发现,不是女神太高冷,而是你没用对方法。 看来想让女...

开元中国2015
38分钟前
2
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部