#复杂组件开发之自定义事件
![](https://box.kancloud.cn/bf0177ee6e26789dc62f05efd7a366f4_1436x806.png)
自定义事件:主要是跟函数有关系,就是让函数能够具备事件的某些特性
函数不利于多人协作开发
```
function show() {
alert(1);
alert(2);
alert(3);
}
```
把函数拆开也不能解决多人协作的问题,因为后面的函数会覆盖前面的函数
```
function show(){
alert(1);
}
function show(){
alert(2);
}
// 后面的函数会覆盖前面的
function show(){
alert(3);
}
show();
```
自定义事件有利于多人协作开发
```
window.addEventListener('show', function () {
alert(1);
}, false);
window.addEventListener('show', function () {
alert(2);
}, false);
// 自定义事件不会覆盖前面的
window.addEventListener('show', function () {
alert(3);
}, false);
show(); // 主动触发自定义事件
```
上面代码只是用来说明自定义事件有利于多人协作开发,运行会报错
- 01 JS面向对象及组件开发
- 02 传统的过程式编写选项卡
- 03 用面向对象封装通用选项卡
- 04 控制多个选项卡自动播放
- 05 用面向对象编写拖拽
- 06 JS面向对象及组件开发
- 07 hasOwnProperty和constructor的使用
- 08 instanceof运算符的使用
- 09 利用toString做类型判断
- 10 什么是面向对象的继承
- 11 面向对象之拷贝继承
- 12 编写继承的拖拽
- 13 继承的其他形式之类式继承
- 14 继承的其他形式之原型继承
- 15 组件开发是什么
- 16 给拖拽组件配置不同参数
- 17 封装弹框组件
- 18 使用对象标记已弹出弹框
- 19 复杂组件开发之自定义事件
- 20 原生JS实现自定义事件
- 21 自定义事件实例
- 22 基于JQ的选项卡组件开发