登录
/
注册
首页
论坛
其它
首页
科技
业界
安全
程序
广播
Follow
关于
导读
排行榜
资讯
发帖说明
登录
/
注册
账号
自动登录
找回密码
密码
登录
立即注册
搜索
搜索
关闭
CSDN热搜
程序园
精品问答
技术交流
资源下载
本版
帖子
用户
软件
问答
教程
代码
写记录
写博客
小组
VIP申请
VIP网盘
网盘
联系我们
发帖说明
道具
勋章
任务
淘帖
动态
分享
留言板
导读
设置
我的收藏
退出
腾讯QQ
微信登录
1
2
/ 2 页
下一页
返回列表
首页
›
资源区
›
代码
›
Web前端入门第 75 问:JavaScript 性能优化之事件委托( ...
Web前端入门第 75 问:JavaScript 性能优化之事件委托(事件代理)原理
[ 复制链接 ]
蚬蕞遂
2025-9-26 10:33:59
猛犸象科技工作室:
网站开发,备案域名,渗透,服务器出租,DDOS/CC攻击,TG加粉引流
如今 Vue 大行其道,大部分开发场景直接使用 @click 就实现了事件绑定,可能都没思索过 JS 中的事件性能优化。
事件委托原理
事件委托 其主要是利用了事件冒泡这个特性。
以点击事件 click 为例:将事件绑定在父元素上,点击子元素会通过冒泡的方式触发父元素的点击事件。这种绑定事件的方式,就称之为 事件委托,也称为 事件代理。
示例
利用事件委托实现点击 span 元素输出 span 元素内容:
<ul >
div 内容
<li>第 1 个 li 第 1 个 span 内容</li>
<li>第 2 个 li 第 2 个 span 内容</li>
<li>第 3 个 li 第 3 个 span 内容</li>
<li>第 4 个 li 第 4 个 span 内容</li>
<li>第 5 个 li 第 5 个 span 内容</li>
<li>第 6 个 li 第 6 个 span 内容</li>
<li>第 7 个 li 第 7 个 span 内容</li>
<li>第 8 个 li 第 8 个 span 内容</li>
</ul>
复制代码
效果:
点击 div 和 li 元素都不会触发事件,点击 span 元素会在控制台输出元素内容。
优点
1、由于 JS 绑定的事件只有一个父元素,所以节省了内存。
2、无需针对每一个子元素绑定事件,所以减少了子元素的事件注册。
3、对于子元素的增删改不用再新注册事件,所以对子元素的操作要简单很多。
4、对于存在大量子元素的页面,由于减少了事件注册次数,所以可以提高页面性能。
缺点
既然事件委托那么有用,那么能不能直接将页面上所有的事件都委托到 body 元素上?
这想法很丰满,但显示很骨感啊,这种情况如果都绑定到最顶层的元素上,那么会导致所有的子元素都会事件冒泡,然后触发顶层元素的事件,这样反而无法做到性能优化,还造成了一些不必要的浪费,毕竟不是所有的子元素都需要响应事件!!
写在最后
性能优化这条路上,一直都存在各种话题,很多性能优化都是过犹不及,适当的场景用适当的方式才是最合理的。
代码编写并不是一蹴而就,很多时候,能实现功能就是好代码,至于性能,在一些小的需求场景,您写的代码可能都无法触发性能问题~~
坚持一个原则:不要过早优化。当我们的代码确实触发了性能问题,再考虑如何优化吧~~
来源:程序园用户自行投稿发布,如果侵权,请联系站长删除
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!
事件
Web
前端
门第
JavaScript
相关帖子
[大模型实战 07 额外篇] 从 ReAct 到 Workflow:基于云端 API 构建事件驱动的智能体
MAUI 嵌入式 Web 架构实战(七) 构建设备实时通信与控制系统
有没有比较简便的前端可以看到联调的时候真实URL的方法?
前端网页中粒子漂浮且与鼠标光标互动效果的实现
大学生挑战全网超详细web笔记02弹
Oracle RMAN物理备份Web系统
90%前端面试必问的12个JS核心,搞懂这些直接起飞!
web课堂笔记
前端如何防止用户重复提交表单?4 种可靠方案(附防坑指南)
JavaScript this绑定规则:告别踩坑指南!
回复
使用道具
举报
提升卡
置顶卡
沉默卡
喧嚣卡
变色卡
千斤顶
照妖镜
相关推荐
业界
[大模型实战 07 额外篇] 从 ReAct 到 Workflow:基于云端 API 构建事件驱动的智能体
0
369
倡粤
2026-03-07
业界
MAUI 嵌入式 Web 架构实战(七) 构建设备实时通信与控制系统
0
719
瞿佳悦
2026-03-10
安全
有没有比较简便的前端可以看到联调的时候真实URL的方法?
0
209
府扔影
2026-03-11
业界
前端网页中粒子漂浮且与鼠标光标互动效果的实现
0
1000
荆邦
2026-03-13
业界
大学生挑战全网超详细web笔记02弹
0
171
损注
2026-03-17
业界
Oracle RMAN物理备份Web系统
0
272
古修蟑
2026-03-18
安全
90%前端面试必问的12个JS核心,搞懂这些直接起飞!
0
690
樊涵菡
2026-03-18
安全
web课堂笔记
0
945
计海龄
2026-03-23
代码
前端如何防止用户重复提交表单?4 种可靠方案(附防坑指南)
0
540
茹静曼
2026-03-24
安全
JavaScript this绑定规则:告别踩坑指南!
0
67
诈知
2026-03-24
回复
(37)
老僻贞
2025-12-8 20:24:25
回复
使用道具
举报
照妖镜
程序园永久vip申请,无限下载程序园所有程序/软件/数据/等
很好很强大 我过来先占个楼 待编辑
眺愤
2025-12-31 13:20:34
回复
使用道具
举报
照妖镜
程序园永久vip申请,无限下载程序园所有程序/软件/数据/等
很好很强大 我过来先占个楼 待编辑
仲水悦
2026-1-5 04:30:56
回复
使用道具
举报
照妖镜
程序园永久vip申请,无限下载程序园所有程序/软件/数据/等
感谢分享,学习下。
院儿饯
2026-1-5 12:53:39
回复
使用道具
举报
照妖镜
猛犸象科技工作室:
网站开发,备案域名,渗透,服务器出租,DDOS/CC攻击,TG加粉引流
感谢,下载保存了
寨重
2026-1-5 18:15:27
回复
使用道具
举报
照妖镜
猛犸象科技工作室:
网站开发,备案域名,渗透,服务器出租,DDOS/CC攻击,TG加粉引流
过来提前占个楼
丘奕奕
2026-1-14 15:10:03
回复
使用道具
举报
照妖镜
程序园永久vip申请,无限下载程序园所有程序/软件/数据/等
喜欢鼓捣这些软件,现在用得少,谢谢分享!
劳暄美
2026-1-17 15:19:38
回复
使用道具
举报
照妖镜
猛犸象科技工作室:
网站开发,备案域名,渗透,服务器出租,DDOS/CC攻击,TG加粉引流
感谢,下载保存了
顾星
2026-1-19 15:13:28
回复
使用道具
举报
照妖镜
猛犸象科技工作室:
网站开发,备案域名,渗透,服务器出租,DDOS/CC攻击,TG加粉引流
分享、互助 让互联网精神温暖你我
庞环
2026-1-22 13:16:30
回复
使用道具
举报
照妖镜
程序园永久vip申请,无限下载程序园所有程序/软件/数据/等
感谢分享
那虻
2026-1-24 18:00:42
回复
使用道具
举报
照妖镜
猛犸象科技工作室:
网站开发,备案域名,渗透,服务器出租,DDOS/CC攻击,TG加粉引流
分享、互助 让互联网精神温暖你我
蔬陶
2026-1-25 10:58:41
回复
使用道具
举报
照妖镜
猛犸象科技工作室:
网站开发,备案域名,渗透,服务器出租,DDOS/CC攻击,TG加粉引流
新版吗?好像是停更了吧。
山真柄
2026-1-29 02:37:56
回复
使用道具
举报
照妖镜
猛犸象科技工作室:
网站开发,备案域名,渗透,服务器出租,DDOS/CC攻击,TG加粉引流
感谢分享
劳暄美
2026-1-29 03:43:24
回复
使用道具
举报
照妖镜
程序园永久vip申请,无限下载程序园所有程序/软件/数据/等
分享、互助 让互联网精神温暖你我
求几少
2026-1-29 07:36:41
回复
使用道具
举报
照妖镜
猛犸象科技工作室:
网站开发,备案域名,渗透,服务器出租,DDOS/CC攻击,TG加粉引流
喜欢鼓捣这些软件,现在用得少,谢谢分享!
阜逐忍
2026-2-3 05:58:28
回复
使用道具
举报
照妖镜
猛犸象科技工作室:
网站开发,备案域名,渗透,服务器出租,DDOS/CC攻击,TG加粉引流
东西不错很实用谢谢分享
寨亳
2026-2-3 23:05:09
回复
使用道具
举报
照妖镜
程序园永久vip申请,无限下载程序园所有程序/软件/数据/等
用心讨论,共获提升!
喳谍
2026-2-5 09:08:17
回复
使用道具
举报
照妖镜
程序园永久vip申请,无限下载程序园所有程序/软件/数据/等
热心回复!
伯斌
2026-2-7 10:30:25
回复
使用道具
举报
照妖镜
程序园永久vip申请,无限下载程序园所有程序/软件/数据/等
不错,里面软件多更新就更好了
豹筒生
2026-2-7 11:20:21
回复
使用道具
举报
照妖镜
猛犸象科技工作室:
网站开发,备案域名,渗透,服务器出租,DDOS/CC攻击,TG加粉引流
不错,里面软件多更新就更好了
下一页 »
1
2
/ 2 页
下一页
高级模式
B
Color
Image
Link
Quote
Code
Smilies
您需要登录后才可以回帖
登录
|
立即注册
回复
本版积分规则
回帖并转播
回帖后跳转到最后一页
浏览过的版块
科技
业界
安全
签约作者
程序园优秀签约作者
发帖
蚬蕞遂
2026-2-7 11:20:21
关注
0
粉丝关注
24
主题发布
板块介绍填写区域,请于后台编辑
财富榜{圆}
3934307807
991125
anyue1937
9994892
kk14977
6845359
4
xiangqian
638210
5
神泱
9522
6
韶又彤
9916
7
宋子
9878
8
荪俗
9018
9
闰咄阅
9995
10
蓬森莉
9870
查看更多
今日好文热榜
583
largebin attack与house of storm
352
智能体组织研发范式变革
810
智能体组织研发范式变革
859
使用小龙虾来操作猿编程的遥控车
401
图片防御与lvlm攻击论文阅读笔记
624
图片防御与lvlm攻击论文阅读笔记
119
二分查找力扣题(leetcode)
79
3分钟部署本地大模型,零成本实现 Token 自
197
Electron41+Vite8.0+DeepSeek桌面端AI助手|
676
OPUS编解码器在audio DSP上的移植和应用
471
SpringCloud进阶--Seata与分布式事务
989
大模型私有化部署指南:从“一键安装”到“
626
大模型私有化部署指南:从“一键安装”到“
886
SpringCloud进阶--Seata与分布式事务
172
SpringCloud进阶--Seata与分布式事务
786
Oracle SQL经典练习50题 | 附答案
206
gitru:一个由 Rust 打造的零依赖 Git 提交
930
gitru:一个由 Rust 打造的零依赖 Git 提交
267
gitru:一个由 Rust 打造的零依赖 Git 提交
856
gitru:一个由 Rust 打造的零依赖 Git 提交