Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/shiyutim/t-entrust
一个便捷事件委托的插件
https://github.com/shiyutim/t-entrust
Last synced: about 1 month ago
JSON representation
一个便捷事件委托的插件
- Host: GitHub
- URL: https://github.com/shiyutim/t-entrust
- Owner: shiyutim
- License: mit
- Created: 2020-08-15T14:53:26.000Z (about 4 years ago)
- Default Branch: master
- Last Pushed: 2020-09-17T02:19:57.000Z (about 4 years ago)
- Last Synced: 2024-09-16T16:52:14.556Z (about 2 months ago)
- Language: JavaScript
- Size: 28.3 KB
- Stars: 0
- Watchers: 3
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# t-entrust
便捷的事件委托代理
t-entrust 是封装了事件委托的一个简单插件,配合 `data-` 自定义属性就能够完成监听器的委托
## 安装
```js
npm i -S t-entrust
```## 使用
```html
copy
```
```js
// js
import TEntrust from "t-entrust"let wrap = new TEntrust("wrap") // 使用 wrap 而不是 #wrap
```上面例子表示:
- 首先给要监听的**父元素**定义 id
- 给 button 按钮添加了一个自定义属性,并赋值为 `copy````js
let wrap = new TEntrust("wrap")
// listen 第一个参数为要监听的事件
// 第二个参数为 回调函数,该回调函数的参数为默认的 event
// 通过 getName函数 来获取响应的操作
// getName 第一个参数为 event,第二个参数为设置监听的事件标签名
// 并返回设置了 data-entrust 的值
wrap.listen("click", e => {
let copy = wrap.getName(e, "button")
// do somethings
})
```对于经常使用的监听方式,如:click ,默认提供了几个函数可以简化操作:
- click
- mousemove
- scroll```js
let wrap = new TEntrust("wrap")
wrap.click(e => {
// do something
})
```移除监听器:
```js
wrap.destroy()
```