<!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);

最新文章

  1. 网站banner写法
  2. Unity3D 导航网格自动寻路(Navigation Mesh)
  3. 2-2 Linux 根文件系统详解
  4. Android Studio 在mac下对应的快捷键
  5. Linux4:useradd、userdel、passwd、groupadd、chgrp、chown、df、du、sort、wget
  6. 【Mysql】权限管理
  7. v9 推荐位 排序问题解决办法
  8. 从Wordpress迁移到Jekyll
  9. Servlet中读取参数的几种方式
  10. 子查询in和表连接效率
  11. oracle任务计划debug
  12. 区块链Fabric技术在托管业务中的运用初探
  13. 安卓的UI界面开发(初学者推荐)
  14. ChromeDriver,IEDriver,Firefox配置
  15. udacity/CarND-Path-Planning-Project 工程详细配置过程——吐血整理
  16. mui项目实时更新
  17. onceAgain, 这是一个py群的群公告说明
  18. 前端axios下载excel(二进制)
  19. All Start Here.
  20. js 俄罗斯方块源码,简单易懂

热门文章

  1. 软件教程 | Jupyter&amp;stata之stata_kernel攻略
  2. CF1638E Colorful Operations
  3. Postgres14.4(Docker安装)
  4. js的map、filter的用法
  5. docker 安装 jFrog
  6. 关于vscode 一些配置
  7. sqlite查看所有表
  8. JavaScript 静态方法
  9. JMeter压力测试之环境搭建、脚本调试及报错解决方法(Linux版)
  10. js 防抖