JavaScript事件是网页交互的核心。本文将全面介绍常用事件类型及其实际应用场景,帮助开发者快速掌握事件处理技巧。
一、鼠标事件(8种核心操作)
实际应用技巧:
// 实现简单绘图板
const canvas = document.getElementById('drawing-board');
canvas.addEventListener('mousedown', startDrawing);
canvas.addEventListener('mousemove', draw);
canvas.addEventListener('mouseup', stopDrawing);
二、键盘事件(3种输入状态)
注意: 现代开发建议优先使用 keydown + keyup 组合
三、页面生命周期事件(6个关键节点)
window.addEventListener('load', () => {
// 页面完全加载后执行(包括图片)
});
window.addEventListener('domContentLoaded', () => {
// DOM解析完成时执行(无需等待资源)
});
window.addEventListener('beforeunload', (e) => {
// 页面关闭前提醒用户保存数据
e.preventDefault();
return (e.returnValue = '确定离开吗?');
});
window.addEventListener('resize', () => {
// 窗口大小变化时适配布局
});
window.addEventListener('scroll', () => {
// 滚动时实现吸顶效果
});
四、表单事件(5种交互状态)
focus:输入框获得焦点(如显示历史记录)
blur:输入框失去焦点(如验证格式)
change:值改变且失去焦点后(适合下拉菜单)
input:值实时变化时触发(推荐替代keypress)
submit:表单提交前验证(必须阻止默认行为)
验证代码示例:
document.getElementById('email').addEventListener('blur', function() {
if (!this.value.includes('@')) {
this.style.borderColor = 'red';
}
});
五、现代事件类型(必学8种)
touchstart/touchend:移动端触摸事件
transitionend:css动画结束时触发
visibilitychange:标签页切换时处理
contextmenu:右键菜单自定义(需阻止默认)
paste:粘贴板数据处理
fullscreenchange:全屏模式切换
online/offline:网络状态检测
六、高级事件处理技巧
事件委托: 动态元素处理终极方案
// 统一处理表格按钮
document.querySelector('#>).addEventListener('click', e => {
if (e.target.classList.contains('delete-btn')) {
deleteRecord(e.target.dataset.id);
}
});
性能优化:滚动事件
// 滚动事件节流处理
let isScrolling;
window.addEventListener('scroll', () => {
clearTimeout(isScrolling);
isScrolling = setTimeout(() => {
// 实际执行的操作
}, 100);
});
自定义事件: 实现组件通信
// 创建事件
const refreshEvent = new Event('dataRefresh');
// 触发事件
document.dispatchEvent(refreshEvent);
// 监听事件
document.addEventListener('dataRefresh', loadData);
实战建议(提升代码质量)
优先使用 addEventListener 替代 on* 属性
移动端务必添加 touch 事件支持
表单验证使用 input + blur 组合
页面卸载前使用 beforeunload 保存数据
高频事件(resize/scroll)必须做节流处理
掌握这些事件机制,能显著提升用户交互体验。建议在实际项目中多练习事件委托和自定义事件的使用,这是构建复杂应用的关键技术。

优网科技秉承"专业团队、品质服务" 的经营理念,诚信务实的服务了近万家客户,成为众多世界500强、集团和上市公司的长期合作伙伴!
优网科技成立于2001年,擅长网站建设、网站与各类业务系统深度整合,致力于提供完善的企业互联网解决方案。优网科技提供PC端网站建设(品牌展示型、官方门户型、营销商务型、电子商务型、信息门户型、微信小程序定制开发、移动端应用(手机站、APP开发)、微信定制开发(微信官网、微信商城、企业微信)等一系列互联网应用服务。