jquery入门——事件机制之事件中的冒泡现象示例解释


Posted in Javascript onSeptember 12, 2020

1、当用户浏览页面时,浏览器会对页面代码进行解释或编译——这个过程实质上是通过事件来驱动的,即页面在加载时,执行一个Load事件,在这个事件中实现浏览器编译页面代码的过程。事件被触发后被分为两个阶段,一个是捕获(Capture),另一个是冒泡(Bubbing),但大多浏览器并不是都支持捕获阶段,因此事件被触发后,往往执行冒泡过程。

2、示例代码

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 

<html xmlns="http://www.w3.org/1999/xhtml"> 

<head> 

<meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 

<title>事件中的冒泡现象</title> 

<script type="text/javascript" src="jquery-1.8.3.min.js"></script> 

<script type="text/javascript"> 

$(function(){ 

var intI=0; 

$("body,div,#btnShow").click(function(event){ 

intI++; 

$(".clsShow").show().html("您好,欢迎来到JQuery世界!").append("<div>执行次数"+intI+"</div>"); 

}) 

}); 

</script> 

</head> 

<body> 

<div> 

<input id ="btnShow" type="button" value ="点击" class ="btn"/> 

</div> 

<div class ="clsShow"></div> 

</body> 

</html>

3、效果图预览:

jquery入门——事件机制之事件中的冒泡现象示例解释
点击后:
jquery入门——事件机制之事件中的冒泡现象示例解释
点击一次后,显示执行的次数是3次,这是因为事件在执行过程中存在冒泡现象,即虽然单击的是按钮,但按钮外围的<div>元素的事件也被触发,同时<div>元素外围的<body>元素的事件也被触发,整个过程为冒泡过程。如何阻止冒泡过程的发生,可以通过stopPropagation()方法或return false来实现,修改代码为:

<script type="text/javascript"> 

$(function(){ 

var intI=0; 

$("body,div,#btnShow").click(function(event){ 

intI++; 

$(".clsShow").show().html("您好,欢迎来到JQuery世界!").append("<div>执行次数"+intI+"</div>"); 

//event.stopPropagation(); 阻止冒泡过程 

return false; 

}) 

}); 

</script>

效果图如:
jquery入门——事件机制之事件中的冒泡现象示例解释
点击后
jquery入门——事件机制之事件中的冒泡现象示例解释
Javascript 相关文章推荐
Javascript 自适应高度的Tab选项卡
Apr 05 Javascript
jQuery 一个图片切换的插件
Oct 09 Javascript
jQuery实现简易的天天爱消除小游戏
Oct 16 Javascript
浏览器检测JS代码(兼容目前各大主流浏览器)
Feb 21 Javascript
JS中Array数组学习总结
Jan 18 Javascript
浅谈JS验证表单文本域输入空格的问题
Feb 14 Javascript
Node.js使用Koa搭建 基础项目
Jan 08 Javascript
vue权限管理系统的实现代码
Jan 17 Javascript
详解如何运行vue项目
Apr 15 Javascript
浅谈JS的原型和继承
May 08 Javascript
vue+vuex+axios从后台获取数据存入vuex,组件之间共享数据操作
Jul 31 Javascript
antd日期选择器禁止选择当天之前的时间操作
Oct 29 Javascript
JQuery入门——用bind方法绑定事件处理函数应用介绍
Feb 05 #Javascript
JQuery入门——用映射方式绑定不同事件应用示例
Feb 05 #Javascript
JQuery入门——事件切换之hover()方法应用介绍
Feb 05 #Javascript
JQuery入门——事件切换之toggle()方法应用介绍
Feb 05 #Javascript
JQuery入门——移除绑定事件unbind方法概述及应用
Feb 05 #Javascript
JQuery入门——用one()方法绑定事件处理函数(仅触发一次)
Feb 05 #Javascript
jquery 卷帘效果实现代码(不同方向)
Feb 05 #Javascript
You might like
smarty 原来也不过如此~~呵呵
2006/11/25 PHP
深入理解PHP之源码目录结构与功能说明
2016/06/01 PHP
CI框架使用composer安装的依赖包步骤与方法分析
2016/11/21 PHP
laravel框架模型和数据库基础操作实例详解
2020/01/25 PHP
基于php+MySql实现学生信息管理系统实例
2020/08/04 PHP
Jquery iframe内部出滚动条
2010/02/11 Javascript
JavaScript this调用规则说明
2010/03/08 Javascript
常用一些Javascript判断函数
2012/08/14 Javascript
jquery定时滑出可最小化的底部提示层特效代码
2013/10/02 Javascript
Javascript中查找不以XX字符结尾的单词示例代码
2013/10/15 Javascript
从数组中随机取x条不重复数据的JS代码
2013/12/24 Javascript
document节点对象的获取方式示例介绍
2013/12/24 Javascript
js事件监听机制(事件捕获)总结
2014/08/08 Javascript
javascript获取dom的下一个节点方法
2014/09/05 Javascript
JavaScript Promise 用法
2016/06/14 Javascript
js实现点击图片自动提交action的简单方法
2016/10/16 Javascript
原生js 封装get ,post, delete 请求的实例
2017/08/11 Javascript
在小程序/mpvue中使用flyio发起网络请求的方法
2018/09/13 Javascript
使用mpvue搭建一个初始小程序及项目配置方法
2018/12/03 Javascript
微信小程序后端无法保持session的原因及解决办法问题
2020/03/20 Javascript
[58:58]2018DOTA2亚洲邀请赛 4.4 淘汰赛 TNC vs VG 第二场
2018/04/05 DOTA
在Python中使用第三方模块的教程
2015/04/27 Python
Python selenium文件上传方法汇总
2020/11/19 Python
Python实现利用163邮箱远程关电脑脚本
2018/02/22 Python
Python中如何使用if语句处理列表实例代码
2019/02/24 Python
【python】matplotlib动态显示详解
2019/04/11 Python
python实现按首字母分类查找功能
2019/10/31 Python
python打印n位数“水仙花数”(实例代码)
2019/12/25 Python
Python读取分割压缩TXT文本文件实例
2020/02/14 Python
快速创建python 虚拟环境
2020/11/28 Python
CSS3 translate导致字体模糊的实例代码
2019/08/30 HTML / CSS
Aerosoles爱柔仕官网:美国舒软女鞋品牌
2017/07/17 全球购物
存储过程的优缺点是什么
2015/01/10 面试题
国际商务专业职业生涯规划书范文
2014/01/17 职场文书
公证委托书大全
2014/04/04 职场文书
2019年世界儿童日宣传标语
2019/11/22 职场文书