什么是时间冒泡?

时间冒泡是指当一个元素触发一个事件时,事件会像水泡一样,从触发元素向它的所有父节点传播,一直到根节点都会接收到此事件

1。如果父元素中注册了相应的事件处理函数,那么尽管事件在子节点触发的,在父元素上注册的事件处理函数同样会被触发1。

时间冒泡示例代码如下:

html 复制代码
<!DOCTYPE html>
<html>
<body>

<p id="demo">点击我,父元素会显示点击事件!</p>

<button id="myBtn">点击我</button>

<script>
document.getElementById("myBtn").addEventListener("click", function(event) {
  var eventType = event.type; //获取事件类型
  var target = event.target; //获取事件目标
  var parent = target.parentNode; //获取父元素
  while(parent !== null) { //循环遍历父元素
    if(parent.tagName === "P") { //如果父元素是p标签
      parent.textContent += "\n" + eventType + " 事件在 " + target.tagName + " 上被触发"; 
    }
    parent = parent.parentNode; //继续向上遍历
  }
});
</script>

</body>
</html>
相关推荐
weixin_443478513 分钟前
Flutter学习之自定义组件
javascript·学习·flutter
Highcharts.js7 小时前
Highcharts 云端渲染的真相:交互式图表与服务器端生成的边界
前端·信息可视化·服务器渲染·highcharts·图表渲染
zhuyan1088 小时前
Linux 系统磁盘爆满导致无法启动修复指南
前端·chrome
编程牛马姐8 小时前
独立站SEO流量增长:提高Google排名的优化方法
前端·javascript·网络
NotFound4869 小时前
实战指南如何实现Java Web 拦截机制:Filter 与 Interceptor 深度分享
java·开发语言·前端
Dontla9 小时前
高基数(High Cardinality)问题介绍(Prometheus、高基数字段、低基数字段)
前端·数据库·prometheus
whuhewei11 小时前
为什么客户端不存在跨域问题
前端·安全
妮妮喔妮11 小时前
supabase的webhook报错
开发语言·前端·javascript
qq_120840937112 小时前
Three.js 大场景分块加载实战:从全量渲染到可视集调度
开发语言·javascript·数码相机
yivifu12 小时前
手搓HTML双行夹批效果
前端·html·html双行夹注