事件冒泡

当事件发生后,这个事件就要开始传播(从里到外或者从外向里)。为什么要传播呢?因为事件源本身(可能)并没有处理事件的能力,即处理事件的函数(方法)并未绑定在该事件源上。例如我们点击一个按钮时,就会产生一个click事件,但这个按钮本身可能不能处理这个事件,事件必须从这个按钮传播出去,从而到达能够处理这个事件的代码中(例如我们给按钮的onclick属性赋一个函数的名字,就是让这个函数去处理该按钮的click事件),或者按钮的父级绑定有事件函数,当该点击事件发生在按钮上,按钮本身并无处理事件函数,则传播到父级去处理。

今天来看看前端的冒泡和事件默认事件如何处理

1.event.stopPropagation()方法

这是阻止事件的冒泡方法,不让事件向documen上蔓延,但是默认事件任然会执行,当你掉用这个方法的时候,如果点击一个连接,这个连接仍然会被打开,

2.event.preventDefault()方法

这是阻止默认事件的方法,调用此方法是,连接不会被打开,但是会发生冒泡,冒泡会传递到上一层的父元素;

3.return false  ;

这个方法比较暴力,他会同事阻止事件冒泡也会阻止默认事件;写上此代码,连接不会被打开,事件也不会传递到上一层的父元素;可以理解为return false就等于同时调用了event.stopPropagation()和event.preventDefault()

转载于:https://www.cnblogs.com/taochengyong/p/9281472.html

事件冒泡和阻止事件冒泡相关推荐

  1. js 事件流的事件冒泡和事件捕获与阻止事件传播

    为了方便引入事件流的概念,我们先来说说什么是事件. 事件就是用户或浏览器自身执行的某种动作.换句话说,我们在浏览网页或者 APP 时,通常会在设备上产生很多交互性的操作,例如点击.选择.滚动屏幕.键盘 ...

  2. 事件冒泡及阻止事件冒泡 事件的触发 事件参数对象 获取用户按下键盘的键

    事件冒泡及阻止事件冒泡 <!DOCTYPE html> <html lang="en"> <head><meta charset=&quo ...

  3. js事件冒泡、阻止事件冒泡以及阻止默认行为

    大家好,我是IT修真院武汉分院web第17期的学员吴三水,一枚正直纯洁善良的web程序员. 今天给大家分享一下,修真院官网js(职业)任务四,深度思考中的知识点--js事件冒泡.阻止事件冒泡以及阻止默 ...

  4. JS7day(事件对象,事件流,事件捕获和冒泡,阻止事件流动,事件委托,学生信息表案例)

    文章目录 事件对象 获取事件对象 部分常用属性 事件流 事件捕获概念: 事件冒泡概念: 阻止事件流动: 相同的鼠标经过事件: 两种(监听事件)注册事件的区别: 传统on注册(L0) 事件监听注册(L2 ...

  5. [JS] 事件冒泡,阻止事件冒泡,事件的三个阶段(捕获,目标,冒泡)

    事件冒泡 添加三个套在一起的div元素,在最里面放一个button,感受事件触发时从里到外"冒泡"的过程. 给每个div都加一个事件:点击时就alert test.html < ...

  6. 利用事件冒泡和阻止事件冒泡的例子

    利用事件冒泡机制 页面中的评分界面,大家一定都很熟悉,现在假如我开了一家饭店,我需要一个在我们的网页上能让顾客对我的饭店进行打分.首先,我们需要两张星星的图片,一张是灰的的星星,一张是黄色的星星,我们 ...

  7. 原声js 的兼容(屏幕尺寸、事件处理程序、阻止事件冒泡、事件目标等等)

    1.事件处理程序 function addEvent(obj, type, fn) { //添加事件兼容 if (obj.addEventListener) { obj.addEventListene ...

  8. JS 事件高级(包括DOM事件流,阻止事件冒泡,阻止事件默认行为,,,以及对我来说,很好用的 事件代理)

    事件对象概念 事件处理函数:事件发生时调用的函数 事件对象:window.event,内置的对象,事件发生的时候会将所有和事件相关的信息都存储在事件对象中,鼠标位置,事件类型,事件目标... //事件 ...

  9. html 冒泡事件拦截,JavaScript阻止事件冒泡与事件捕获

    1.事件冒泡 在一个对象上触发某类事件,如onclick事件等,在其祖先节点上也会依次触发该事件. 事件冒泡 依次输出:a.div.body 注意:不是所有的事件都能冒泡.blur.focus.loa ...

最新文章

  1. python的模块的导入和包的导入
  2. 排序算法——冒泡排序、选择排序、直接插入排序
  3. 跟韦老师聊了一个深夜
  4. 分布式服务框架Dubbo使用小结
  5. 手绘线条图画机器人_怎么把照片转换成手绘图画?怎么加水印?
  6. Mysql Can't connect to MySQL server
  7. JavaScript中的内置对象(数组、Boolean、Number、字符串)和自定义对象
  8. mysql5.7如何打开,mysql57怎么打开
  9. sql server 数据库连接方式分析、详解
  10. html音乐播放器怎么有黑边框,播放不能满屏有黑边怎么办,怎么剪切视频黑边,剪切黑边...
  11. Composer Laravel 下载安装
  12. WPC QI 无线充电
  13. springboot 打卡功能_SpringBoot、SSM、ajax实现考勤打卡功能(详细实现),供新手参考!...
  14. 电子书极其格式的相关知识
  15. Android实现记账本(麻雀虽小,五脏俱全)
  16. MPI_Bcast函数的用法
  17. 日本人的姓及一些姓氏的读法(转)
  18. 智能井盖运用5G技术
  19. archmanjaro添加black arch及cn源
  20. CSS 网页背景图片设置

热门文章

  1. pangilin 安装编译
  2. LAMP 关键数据集锦技术选项参考
  3. centos中mysql重置密码
  4. ASP.NET中绑定枚举类型
  5. asp.net 2.0 权限树的控制
  6. memset函数使用详解
  7. Win32 环境下的堆栈
  8. Windows7在Notepad++中配置Python+OpenCV
  9. 微信小游戏创业,究竟是红海还是死海?
  10. web服务器错误配置文件,web服务器http配置文件