JavaScript自定义事件广播与订阅
来源:互联网 发布:淘宝银泰百货旗舰店 编辑:程序博客网 时间:2024/06/03 16:37
昨天写聊天室用到nodejs的event模块,今天也用JavaScript前端的 event写一个,通过一次触发,全局响应,接下来做单页应用,尝试不以传统方式进行事件处理,改为以自定义event进行处理,看看对传统单页应用的与我的想法在实际实施上有什么区别和影响。
<!DOCTYPE html><html><head lang="zh-CN"> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1"/> <title></title></head><body><input id="bu1" type="button" value="点我"><script> //自定义test1事件 var ev1 = new Event('t1', {bubbles: 'true', cancelable: 'true'}); ev1.aaa='ev1'; //创建event的对象实例。 var ev2 = document.createEvent('HTMLEvents'); // 3个参数:事件类型,是否冒泡,是否阻止浏览器的默认行为 ev2.initEvent('t2', true, true); ev2.aaa = 'ev2'; document.getElementById("bu1").addEventListener('click', function () { document.dispatchEvent(ev1); document.dispatchEvent(ev2); }, false); (function () { document.addEventListener('t1', function (e) { console.log(e.aaa+1); }, false); //document上绑定自定义事件oneating document.addEventListener('t2', function (e) { console.log(e.aaa+2); }, false); })(); (function () { document.addEventListener('t1', function (e) { console.log(e.aaa+3); }, false); //document上绑定自定义事件oneating document.addEventListener('t2', function (e) { console.log(e.aaa+4); }, false); })(); (function () { document.addEventListener('t1', function (e) { console.log(e.aaa+5); }, false); //document上绑定自定义事件oneating document.addEventListener('t2', function (e) { console.log(e.aaa+6); }, false); })();</script></body></html>
1 0
- JavaScript自定义事件广播与订阅
- JavaScript的事件广播与侦听
- 广播和自定义广播事件
- 自定义广播事件
- 事件、订阅与触发(一)
- C# 事件 订阅与发布
- cocos2d - JS 自定义事件(广播)
- 关于remotiong的客户端订阅服务端广播事件
- VB.net Wcf事件广播(订阅、发布)
- Android 发送系统广播与自定义广播
- 根据jquery自定义事件写一个事件订阅派发demo
- C#事件的订阅与触发
- BroadcastReceiver广播事件处理之自定义
- Android添加自定义广播事件(带多个参数)
- javascript:自定义事件初探
- JAVASCRIPT 自定义onchange事件
- Javascript自定义事件
- Javascript之自定义事件
- 解决内部ViewPager不能向左滑动的bug
- IO流类之间关系图
- 轮播图源码分析
- axios-mock-adapter
- FFMPEG Tips (2) 如何提取码流的基本信息
- JavaScript自定义事件广播与订阅
- Java笔记之垃圾回收机制
- Java中类的加载和初始化
- Problem A: 求平均年龄
- Java 8: java.time.DayOfWeek
- 畅想未来生活
- 我与Visual Basic的那些事儿
- 20170505:javacv之java.awt.HeadlessException
- 医院系统--基本概要分析#简单#随笔