关于浏览器的eventflow(capture and bubble up)
因为,没有全面的学习javascript,及其事件原理:
全占的课程:4-5 浏览器 Bubble Up 事件模型中
不是很理解它所讲的。网上查找相关知识点。记录中在博客中:
理解了JS的加载
https://www.cnblogs.com/chentianwei/diary/2018/07/12/9300355.html
这篇文章讲了eventflow的知识:借用w3c的模型。
我个人的实践:
代码:
<div id="post-list">
<p class=".toggle-flag">
...
<script>
document.addEventListener("turbolinks:load", function() {
document.getElementById("post-list").addEventListener("click",function(){
console.log("hello");
})
})
document.addEventListener("turbolinks:load", function() {
document.querySelectorAll(".toggle-flag").forEach(function(anchor){
anchor.addEventListener("click", function(){
console.log("world");
})
})
})
点击div边框处,console会出现"hello";
点击p元素,console会出现:
world
hello
如果内层的addEventListener()第三个参数是true,代表UPcatpture,则先显示hello。
重点:bubbles event property
如果一个事件是一个bubbling event则返回一个boolean值。
bubbles是一个object event, 也是DOM Event。
案例:https://www.w3schools.com/jsref/tryit.asp?filename=try_dom_event_bubbles
关于浏览器的eventflow(capture and bubble up)的更多相关文章
- [No00006A]Js的addEventListener()及attachEvent()区别分析【js中的事件监听】
1.添加时间监听: Chrom中: addEventListener的使用方式: target.addEventListener(type, listener, useCapture); target ...
- webkit事件处理
1,概述 原文地址:http://blog.csdn.net/awebkit/article/details/8493716 浏览器处理事件一般有两个过程,捕获过程和冒泡过程,这是由addEventL ...
- 你不知道的JavaScript-- 事件流与事件处理
转载:http://blog.csdn.net/i10630226/article/details/48970971 1. 事件处理 1.1. 绑定事件方式 (1)行内绑定 语法: //最常用的使用方 ...
- addEventListener()及attachEvent()区别分析
Javascript 的addEventListener()及attachEvent()区别分析 Mozilla中: addEventListener的使用方式: target.addEventLis ...
- javascript fundamental concept
http://hzjavaeyer.group.iteye.com/group/wiki?category_id=283 上面这个url非常适合javascript初学者阅读,感谢原作者的分享 什么是 ...
- 前端开发工程师 - 03.DOM编程艺术 - 期末考试
期末考试客观题 返回 倒计时: 01:24 1 单选(2分) 以下选项中不是节点类型的是 A. COMMENT_NODE B. DOCUMENT_NODE C. BODY_NODE D. E ...
- Javascript 的addEventListener()及attachEvent()区别分析
大家都知道事件的用法就是当某个事件(状况)被触发了之后就会去执行某个Function, 尤其是Javascript, 在当红AJAX的催化下, 了解Javascript的Event用法更加重要, 在这 ...
- window.addeventlistener使用方法
http://www.jb51.net/article/49858.htm .................................................... (要注意的是div ...
- JavaScript事件在WebKit中的处理流程研究
本文主要探讨了JavaScript事件在WebKit中的注冊和触发机制. JS事件有两种注冊方式: 通过DOM节点的属性加入或者通过node.addEventListener()函数注冊: 通过DOM ...
随机推荐
- 在centos上用nginx访问php显示404
yum install nginx -y 可以在浏览器 访问html文件,但是访问不了php文件 后来我看见别人别人响应的参数有php,而我没有我,就觉得php配置应该有问题: 我 yum insta ...
- Centos设置SSH限制登录用户及IP
1,系统版本查看 2,编辑ssh配置文件 vim /etc/ssh/sshd_config 在尾部加一行 允许sysman用户从ip1.1.1.*登录 3,重启sshd即可 /etc/init.d/s ...
- Create an Index
db.collection.createIndex( { name: -1 } ) Indexes — MongoDB Manual https://docs.mongodb.com/manual/i ...
- kubernetes实战(四):k8s持久化安装rabbitmq集群
1.下载文件 https://github.com/dotbalo/k8s/ 2.创建namespace kubectl create namespace public-service 如果不使用pu ...
- 爬虫之selenium使用
详细使用链接: 点击链接 selenium介绍: selenium最初是一个自动化测试工具,而爬虫中使用它主要是为了解决requests无法直接执行JavaScript代码的问题 selenium本质 ...
- mysql 大表优化
当MySQL单表记录数过大时,增删改查性能都会急剧下降,可以参考以下步骤来优化: 转自:https://segmentfault.com/a/1190000006158186 单表优化 除非单表数据未 ...
- centos 系统软件包管理 yum 本地yum配置 扩展源epel rpm 清除yum缓存 yum provides "*/vim" 第十节课
centos 系统软件包管理 yum 本地yum配置 扩展源epel rpm 清除yum缓存 yum provides "*/vim" 第十节课 你不能保证可逆化操 ...
- 用Python实现的数据结构与算法:队列
一.概述 队列(Queue)是一种先进先出(FIFO)的线性数据结构,插入操作在队尾(rear)进行,删除操作在队首(front)进行. 二.ADT 队列ADT(抽象数据类型)一般提供以下接口: Qu ...
- WebService客户端几种实现方式
1.jdk原生调用(需要获取服务接口文件) import java.net.URL; import javax.xml.namespace.QName; import javax.xml.ws.Ser ...
- VS2010/MFC编程入门之八(对话框:创建对话框类和添加控件变量)
前两讲中鸡啄米为大家讲解了如何创建对话框资源.创建好对话框资源后要做的就是生成对话框类了.鸡啄米再声明下,生成对话框类主要包括新建对话框类.添加控件变量和控件的消息处理函数等. 因为鸡啄米给大家的例程 ...