如何取消侦听器中的自定义javascript事件?
如果通过CustomEvent创建的自定义事件被调度,那么在侦听器中取消它的方法是什么,以防止事件的主要用途 例如,用户单击一个覆盖,然后它会发出一个事件,但必须由一些代码来决定是隐藏覆盖还是保持其不变如何取消侦听器中的自定义javascript事件?,javascript,events,Javascript,Events,如果通过CustomEvent创建的自定义事件被调度,那么在侦听器中取消它的方法是什么,以防止事件的主要用途 例如,用户单击一个覆盖,然后它会发出一个事件,但必须由一些代码来决定是隐藏覆盖还是保持其不变 更新这是一个问题,我知道答案,但尝试将其告知其他人。我们需要将事件配置为可取消 在任何事件侦听器内调用preventDefault以取消它 window.addEventListener('some_awesome_event', event => { event.preventD
更新这是一个问题,我知道答案,但尝试将其告知其他人。我们需要将事件配置为可取消 在任何事件侦听器内调用preventDefault以取消它
window.addEventListener('some_awesome_event', event => {
event.preventDefault()
})
然后可以使用dispatchEvent返回的结果检查事件是否已取消
用于创建和触发事件
文件
界面文档你自己已经知道答案,为什么还要问问题?而且它是一个duplicate@SanderVisser-问答部分完全正确,以及。重复的部分是好的还是不好的取决于自我回答,通常是不好的。副本可以帮助人们找到已经提出的问题及其答案。请识别重复项,以便人们可以进行适当的投票。@Sanderviser-系统明确鼓励您在提问时回答问题-例如,分享您已有的知识,但以问答形式。当你问一个问题时,如果你想同时提供答案,它有一个按钮可以按下。然后它同时发布了这两个版本。@T.J.Crowder不知道,谢谢@Sander Visser我在这里寻找一个快速的答案,但没有找到任何关于vanilla JS的信息,然后,在自己的搜索之后,决定我不是一个人,并分享了这些知识。你能给我一个复制品的链接吗?我会请主持人将我的问题标记为重复
window.addEventListener('some_awesome_event', event => {
event.preventDefault()
})
let isAllowed = window.dispatchEvent(awesomeEvent)
if(isAllowed){
// do some default things
}
else {
// just an example
console.log('Oops! The event was cancelled, nothing to do...')
}