gpt4 book ai didi

javascript - 如何为 jQuery 事件附加一些数据以进行冒泡?

转载 作者:行者123 更新时间:2023-11-30 14:25:38 25 4
gpt4 key购买 nike

展示我想要实现的目标的最简单方法是举一个简单的例子:

$("#button-1").click(function (e) { e.data = { flag: true } });
$("#button-2").click(function (e) { e.data = { flag: false } });

$(window).click(function (e) { $("p").html(JSON.stringify(e.data)) });
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>

<button id='button-1'>button 1</button>
<button id='button-2'>button 2</button>

<p></p>

当我将任何东西附加到一个事件时,它会在冒泡到窗口后消失。有什么办法可以保留吗?

最佳答案

我现在不能告诉你为什么它不能那样工作,我需要先检查 jQuery 的源代码。

但您可以将其附加到 originalEvent .但我可能会使用比 data 更具体的名称,以避免命名冲突。

$("#button-1").click(function (e) { e.originalEvent.data = { flag: true } });
$("#button-2").click(function (e) { e.originalEvent.data = { flag: false } });

$(window).click(function (e) { $("p").html(JSON.stringify(e.originalEvent.data)) });
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>

<button id='button-1'>button 1</button>
<button id='button-2'>button 2</button>

<p></p>

关于javascript - 如何为 jQuery 事件附加一些数据以进行冒泡?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51991187/

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