gpt4 book ai didi

javascript - 不用 jQuery 触发自定义事件

转载 作者:可可西里 更新时间:2023-11-01 01:24:40 29 4
gpt4 key购买 nike

我正在使用 jQuery triggerHandler() 触发一些 DOM 事件

<!DOCTYPE html>
<html>
<head>
<title>stackoverflow</title>
<script src="http://ajax.googleapis.com:80/ajax/libs/jquery/2.1.3/jquery.min.js"></script>
</head>

<body>
<script>
$(document).ready(function() {
$(document).on('hey', function(customEvent, originalEvent, data) {
console.log(customEvent.type + ' ' + data.user); // hey stackoverflow

});

// how to this in vanilla js
$(document).triggerHandler('hey', [{}, {
'user': 'stackoverflow'
}])
});
</script>
</body>

</html>

如果没有 jQuery,我如何触发它?

重要:我需要知道事件类型和自定义数据

最佳答案

如果您想要精确 jQuery 行为的复制,您可能最好深入研究 jQuery source code .

如果您只想进行正常的事件调度和监听,请参阅 CustomEvent了解如何使用自定义数据和 addEventListener 发送事件了解如何聆听。

你的例子可能看起来像

document.addEventListener('hey', function(customEvent)
{
console.log(customEvent.type + ' ' + customEvent.detail.user); // hey stackoverflow
});
document.dispatchEvent(new CustomEvent('hey', {'detail': {'user': 'stackoverflow'}}));

关于javascript - 不用 jQuery 触发自定义事件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29898254/

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