Skip to content

one

.one( events [, selector ] , handler [, options ] )

绑定一次性事件

.one( events [, selector ] , handler [, options ] ) from @1.0

  • events
    • 类型: String
    • 描述: 一个或多个以空格或逗号分隔的事件类型和可选命名空间,例如:"click""keydown.myPlugin"
  • selector
    • 类型: String
    • 描述: 事件委托所用,触发事件的子元素过滤选择器
  • handler
    • 类型: Function( Event eventObject [, Anything extraParameter ] [, ... ] )
    • 描述: 事件触发时执行的函数。
  • options
    • 类型: PlainObject
    • 描述: addEventListener方法的options参数

本质上它底层调用的还是on方法,该方法只会触发一次

用法

假定页面的html如下:

html
<ul>
  <li id="foo">foo</li>
  <li id="bar">bar</li>
</ul>

一次性点击事件

js
d("#foo").one("click", handler)

一次性委托事件

js
d("ul").one("click", "li", handler)

也支持options选项

js
d("#foo").one("click", handler, true)
d("#foo").one("click", handler, { capture: true })
d("#foo").one("click", handler, { capture: true, passive: false })

// 委托也支持第options选项
d("ul").one("click", "li", handler, { capture: true })

基于 MIT 许可发布