我想向函数添加一个click事件监听器,但只希望它发生一次.我怎么能这样做?
如果可能的话,我想清楚JQuery.
EDITED
因为我得到的答案完全满足了我的需要,但我可以通过上下文更清楚一点.
我正在编写一个绘制矩形的函数,首先只需单击一个按钮即可启动矩形函数.然后在drawRectangle函数中有两个单击事件侦听器.这些是我想在函数中只发生一次的事件.如果再次单击矩形启动按钮,则允许用户创建另一个矩形.
Gib*_*olt 28
EventTarget.addEventListener("click", function() {
// Do something cool
}, {once : true});
Run Code Online (Sandbox Code Playgroud)
一个布尔值,指示在添加后最多应调用一次侦听器.如果
true,则在调用时将自动删除侦听器.- MDN网络文档
以下是支持此功能的浏览器列表(截至2018年6月为86%)
Flo*_*ine 15
removeEventListener一旦事件被触发,您必须使用.但是,removeEventListener将一个函数作为参数,这意味着您需要声明一个命名函数,添加它addEventListener,并让它自行删除.例:
function foo() {
// do things, then
removeEventListener('click', foo);
}
addEventListener('click', foo);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
14410 次 |
| 最近记录: |