当前位置:网站首页>DOM —— 事件绑定与解绑
DOM —— 事件绑定与解绑
2022-08-02 14:17:00 【z_小张同学】
概念:
事件,就是函数在某种状态下(是由浏览器设定的,也叫事件触发)被调用.JS捕捉到的发生在网页上的行为,然后执行提前设定好的程序,官方称为事件句柄,是交互体验的核心功能。
事件三要素
1.事件源
2.事件类型
3.事件处理程序(handler)
事件绑定的方式
(1)行内绑定方式:在标签行内 的事件值上写上标志"javaScript:后跟js代码"
<div class="box" onclick="console.log(666)">hello</div>(2)元素属性绑定方式:兼容性很好,但是一个元素的同一个时间上只能绑定一个处理程序(handler)
var box = document.querySelector(".box")
box.onclick = function() {
console.log("hello world");
}(3)给元素添加一个事件监听器:IE9以下不兼容,可以为一个事件绑定多个处理程序 (使用最多的方法)
var box = document.querySelector(".box")
box.addEventListener("click",function() {
console.log("hello");
})(4)给元素添加一个事件监听器(IE专有):一个事件同样可以绑定多个处理程序
var box = document.querySelector(".box")
box.attachEvent("click",function() {
console.log("hello");
})(5)多元素同事件同处理程序绑定方式(代理模式):父元素绑定事件 通过事件对象来区分用户触发的事件属于哪一个具体的对象
var box = document.querySelector(".box")
box.onclick=function(e) {
e.target
}事件解绑
(1)行内和属性解绑的事件 box.onclick = null
var box = document.querySelector(".box")
box.onclick = function() {
box.onclick = null
}(2)移除对应的元素的对应的监听程序
function fn() {
console.log(222);
}
var box = document.querySelector(".box")
box.addEventListener("click",fn)
// 解绑
box.removeEventListener("click",fn)边栏推荐
猜你喜欢

项目管理模块-项目权限功能开发

MYSQL5.7详细安装步骤

炒鸡好用的音乐平台(插件)

The use of a semaphore/interprocess communication 】 【 Shared memory

为什么 RTP 的视频的采样率是 90kHz ?

hybrid 实现同网段但不同vlan之间通讯

网络运维系列:远程服务器登录、配置与管理

CDH (computational Diffie-Hellman) problem and its differences with discrete logarithm and DDH problems

这几年让你大呼惊人的AI应用,都离不开这项技术

CPU缓存一致性协议MESI
随机推荐
Scala的模式匹配与样例类
【软件测试】selenium自动化测试1
smart rtmpd web 接口说明
一线大厂研发流程(转载自鱼皮)
WEB自动化之键盘、鼠标操作
异常抛出错误
一个简单的 erlang 的 udp 服务器和客户端
Template series-union set
【Solidity智能合约基础】-- 基础运算与底层位运算
一分钟之内搭建自己的直播服务器?
webrtc 数据接收流程图解
The use of a semaphore/interprocess communication 】 【 Shared memory
Mobile copy constructor
MYSQL5.7详细安装步骤
UINIX 高级环境编程杂项之限制
【TCP 和 UDP 基本原理】
8.0以上MySQL的常见错误
【个人向】线性表复习
【软件测试】自动化测试selenium3
Golang学习(三十五) go 连接redis