gpt4 book ai didi

javascript - 如何触发自定义可取消事件

转载 作者:数据小太阳 更新时间:2023-10-29 05:49:23 24 4
gpt4 key购买 nike

我知道如何在 JavaScript 中触发事件,但我不知道如何使其可取消。通过事件处理程序中的 event.preventDefault()

document.dispatchEvent(new CustomEvent("name-of-event", {}));

我已经编写了以下代码,但是如何通过 event.preventDefault() 以原生方式实现?

document.dispatchEvent(new CustomEvent("my-event",function keepGoing(result){
if(result){
// continue ...
}
}));

// And then in event listener:
document.addEventListener('my-event',function(event,keepGoing){
keepGoing(true);
// Or keepGoing(false);
});

最佳答案

CustomEvent 构造函数采用第二个选项参数,您可以使用该参数使事件可取消。见文章Creating and triggering events在 MDN 上。

var event = new CustomEvent("my-event", {
cancelable: true
})

document.addEventListener('my-event', function (event) {
event.preventDefault()
})

console.log(
document.dispatchEvent(event) ? 'Event was not cancelled' : 'Event was cancelled'
)

关于javascript - 如何触发自定义可取消事件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42732247/

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