gpt4 book ai didi

events - 使用 Dojo 解除事件绑定(bind)

转载 作者:行者123 更新时间:2023-12-04 18:18:49 26 4
gpt4 key购买 nike

我使用 .on() 来绑定(bind) Dojo 中的 keydown 事件。事件触发后,我需要取消绑定(bind)事件,但似乎没有任何效果。他们的文档说该事件返回一个具有 .remove() 方法的对象,但我终其一生都无法弄清楚如何访问或应用此方法。

任何帮助将不胜感激。

谢谢!

    query('#video-topics-input').on('keydown',function(e){
topicsDrop.keyDownFunc(e, e.keyCode);
});

最佳答案

dojo.on 返回一个事件句柄,该句柄具有上述 .remove 函数以取消绑定(bind)监听器。但是,在您的情况下,您使用的是在 dojo.NodeList 上运行的链式 dojo.query。

这基本上意味着您必须考虑数组,上面的示例将返回一个包含一个条目的数组 - 因为选择器是一个 ID。

绑定(bind)事件监听器:

var eventHandles = query('#video-topics-input').on('keydown',function(e){
topicsDrop.keyDownFunc(e, e.keyCode);
});

并取消绑定(bind)这些:
eventHandles.forEach(function(handle) { handle.remove() });

一种更有效的方法是不使用查询来查找 byId

关于events - 使用 Dojo 解除事件绑定(bind),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11144669/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com