JavaScript-事件,事件流,事件委托

本文介绍了HTML事件的类型,如onclick,以及事件流的概念,包括冒泡和捕获模式。作者还讨论了DOM2级事件流的三个阶段,并结合实例说明。对于前端工程师的成长路径,作者提供了系统学习资源和面试题指南。
摘要由CSDN通过智能技术生成

HTML 事件可以是浏览器行为,也可以是用户行为。HTML 元素中可以添加事件属性,使用 JavaScript 代码来添加 HTML 元素。

示例:按钮元素中添加了 onclick 属性

现在的时间?

常见的HTML事件:

事件描述
onchangeHTML 元素改变
onclick用户点击 HTML 元素
onmouseover用户在一个HTML元素上移动鼠标
onmouseout用户从一个HTML元素上移开鼠标
onkeydown用户按下键盘按键
onload浏览器已完成页面的加载
事件流

事件流就是描述了页面中接受事件的顺序,IE和Netscape提出来差不多完全相反的事件流的概念,IE事件流是事件冒泡流,Netscape事件流是事件捕获流。

事件冒泡
事件冒泡即事件最开始由最具体的元素(文档中嵌套层次最深的那个节点)接收,然后逐级向上传播至最不具体的节点(文档)。(由内及外)

示例:

document.getElementById(“aTag”).addEventListener(‘click’,aTag);
document.getElementById(“span”).addEventListener(‘click’,span);
document.getElementById(“div”).addEventListener(‘click’,div);
function aTag(e) {
alert(“点击的是a标签”);
}
function span(e) {
alert(“点击的是span标签”);
}
function div(e) {
alert(“点击的是div标签”);
}

事件捕获
事件捕获即事件最早由不太具体的节点接收,而最具体的节点最后接收到事件。(由外及内)

示例:

document.getElementById(“div”).addEventListener(‘click’,div,true);
document.getElementById(“aTag”).addEventListener(‘click’,aTag,true);
document.getElementById(“span”).addEventListener(‘click’,span,true);

第三个参数设置为true,即为捕获事件,默认为false;否则的话,事件流还是和上面的一样,因为不管是在IE还是标准浏览器下,事件冒泡浏览器都支持的。

DOM事件流
DOM2级事件流:
DOM2级事件 规定的事件流包括三个阶段:事件捕获阶段、处于目标阶段、事件冒泡阶段。

  • 捕获阶段:实际目标(
    元素)在捕获阶段不会接收事件,意思是事件从 [ document->html->body ] 后就停止了。【1、2、3】
  • 目标阶段:事件在目标元素上发生。但事件处理被看作是冒泡阶段的一部分。
  • 冒泡阶段:从目标元素开始处理事件,一直传播到文档。也就是 [ div->body->html->document ]【4、5、6、7】

小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。

深知大多数初中级前端工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!
因此收集整理了一份《2024年Web前端开发全套学习资料》送给大家,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。

img
img
img
img

由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频

如果你觉得这些内容对你有帮助,可以添加下面V无偿领取!(备注:前端)
img

读者福利

========

开源分享:【大厂前端面试题解析+核心总结学习笔记+真实项目实战+最新讲解视频】

由于篇幅过长,就不展示所有面试题了,想要完整面试题目的朋友(另有小编自己整理的2024大厂高频面试题及答案附赠)


pdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3NpbmF0XzM3OTAzNDY4,size_16,color_FFFFFF,t_70)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值