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 相关文章推荐
javscript对象原型的一些看法
Sep 19 Javascript
jquery插件制作 提示框插件实现代码
Aug 17 Javascript
VUE JS 使用组件实现双向绑定的示例代码
Jan 10 Javascript
详解Vue2+Echarts实现多种图表数据可视化Dashboard(附源码)
Mar 21 Javascript
angular学习之ngRoute路由机制
Apr 12 Javascript
文本溢出插件jquery.dotdotdot.js使用方法详解
Jun 22 jQuery
JQuery 选择器、DOM节点操作练习实例
Sep 28 jQuery
Vue下滚动到页面底部无限加载数据的示例代码
Apr 22 Javascript
如何检查一个对象是否为空
Apr 11 Javascript
新手入门带你学习JavaScript引擎运行原理
Jun 24 Javascript
webpack 处理CSS资源的实现
Sep 27 Javascript
Vue3 中的数据侦测的实现
Oct 09 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
PHP中file_exists使用中遇到的问题小结
2016/04/05 PHP
Windows服务器中PHP如何安装redis扩展
2019/09/27 PHP
JS backgroundImage控制
2009/05/19 Javascript
关于JS中的闭包浅谈
2013/08/23 Javascript
Jquery倒计时源码分享
2014/05/16 Javascript
jQuery .tmpl() 用法示例介绍
2014/08/21 Javascript
js和jQuery设置Opacity半透明 兼容IE6
2016/05/24 Javascript
jQuery封装的屏幕居中提示信息代码
2016/06/08 Javascript
jQuery实现的选择商品飞入文本框动画效果完整实例
2016/08/10 Javascript
JS控制HTML元素的显示和隐藏的两种方法
2016/09/27 Javascript
JS实现微信里判断页面是否被分享成功的方法
2017/06/06 Javascript
Vue如何实现响应式系统
2018/07/11 Javascript
微信小程序实现获取小程序码和二维码java接口开发
2019/03/29 Javascript
基于Vue SEO的四种方案(小结)
2019/07/01 Javascript
jquery-ui 进度条功能示例【测试可用】
2019/07/25 jQuery
微信小程序搜索框样式并实现跳转到搜索页面(小程序搜索功能)
2020/03/10 Javascript
JS实现图片幻灯片效果代码实例
2020/05/21 Javascript
React实现类似淘宝tab居中切换效果的示例代码
2020/06/02 Javascript
[03:33]TI9战队采访 - Infamous
2019/08/20 DOTA
python统计日志ip访问数的方法
2015/07/06 Python
Python 基础教程之包和类的用法
2017/02/23 Python
详解Python发送email的三种方式
2018/10/18 Python
Python给定一个句子倒序输出单词以及字母的方法
2018/12/20 Python
利用pytorch实现对CIFAR-10数据集的分类
2020/01/14 Python
关于iframe跨域使用postMessage的实现
2019/10/29 HTML / CSS
聚美优品励志广告词
2014/03/14 职场文书
伊索寓言教学反思
2014/05/01 职场文书
汽车维修专业自荐书
2014/05/26 职场文书
社区护士演讲稿
2014/08/27 职场文书
平安建设汇报材料
2014/12/29 职场文书
违规违纪检讨书范文
2015/05/06 职场文书
学校禁毒宣传活动总结
2015/05/08 职场文书
2015年领导班子工作总结
2015/05/23 职场文书
优秀班主任工作总结2015
2015/05/25 职场文书
vue如何实现关闭对话框后刷新列表
2022/04/08 Vue.js
ORACLE中dbms_output.put_line输出问题的解决过程
2022/06/28 Oracle