js 自定義event
2024-10-21 09:38:48
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Event對象敘述 自定義事件CustomEvent</title>
</head>
<body>
<!-- 描述:事件发生以后,会产生一个事件对象,作为参数传给监听函数。浏览器原生提供一个Event对象,
所有的事件都是这个对象的实例,或者说继承了Event.prototype对象。
點擊->var clickEvent = new Event('click') ->存在addEventListener監聽函數->執行監聽函數
將clickEvent對象作爲參數傳遞過去
-->
<!--
var eve = new Event('look',{
"bubbles":false,
"cancelable":false
});
document.dispatchEvent(eve); //document調用 Event是dom下的一部分
-->
<div>父div
<h1>1111111111111</h1>
</div>
</body>
<script>
var eve = new CustomEvent('look',{
"bubbles":false,
"cancelable":false
}); var h1=document.querySelector("h1");
var div1 =document.querySelector("div");
h1.addEventListener('look',function(ev){
console.info('user defined event happen');
var bubble=ev.bubbles;
console.error(bubble)//false 非冒泡類型
},false)
// div1.addEventListener('look',function(){
// console.error("parent element div attach")
// },true)//useCapture 情況下執行 且先于h1執行 div1.addEventListener('look',function(){
console.error("parent element div attach")
},false)//useCapture 為false 冒泡情況下才執行 --->結果:由於h1的bubbles=false 不冒泡 因此div1的事件不觸發
h1.dispatchEvent(eve);//user defined event happen
//手動觸發事件執行 </script>
</html>
自定義事件傳參數
var myEvent = new CustomEvent('myevent', {
detail: {
foo: 'bar'
},
bubbles: true,
cancelable: false
}); el.addEventListener('myevent', function (event) {
console.log('Hello ' + event.detail.foo);
}); el.dispatchEvent(myEvent);
最新文章
- 网站banner写法
- Unity3D 导航网格自动寻路(Navigation Mesh)
- 2-2 Linux 根文件系统详解
- Android Studio 在mac下对应的快捷键
- Linux4:useradd、userdel、passwd、groupadd、chgrp、chown、df、du、sort、wget
- 【Mysql】权限管理
- v9 推荐位 排序问题解决办法
- 从Wordpress迁移到Jekyll
- Servlet中读取参数的几种方式
- 子查询in和表连接效率
- oracle任务计划debug
- 区块链Fabric技术在托管业务中的运用初探
- 安卓的UI界面开发(初学者推荐)
- ChromeDriver,IEDriver,Firefox配置
- udacity/CarND-Path-Planning-Project 工程详细配置过程——吐血整理
- mui项目实时更新
- onceAgain, 这是一个py群的群公告说明
- 前端axios下载excel(二进制)
- All Start Here.
- js 俄罗斯方块源码,简单易懂