gpt4 book ai didi

javascript - jQuery触发触发点击事件但不发送事件数据

转载 作者:行者123 更新时间:2023-11-28 00:34:25 26 4
gpt4 key购买 nike

搜索了几个小时后,我似乎无法弄清楚为什么 jQuery 触发的单击事件没有将实际事件传递给单击函数。这是一个示例:jsfiddle .

$(document).ready(function () {
$('tr').click(function (event) {
if (event.target.type !== 'checkbox') {
$(':checkbox', this).trigger("click");
}
});

$(':checkbox').click(function (event) {
console.log(event.shiftKey);
});
});

如果我单击第一个复选框,控制台将按预期记录“false”。然后,如果我按住 Shift 键,然后选中最后一个复选框,控制台将按预期记录“true”,因为单击该框时,将按住 Shift 键。

现在移至数据并单击行而不是复选框。无论单击一行时是否按住 Shift 键,都会触发复选框单击事件,相应地选中/取消选中该框,但 event.shiftKey 始终返回 false。

为什么从行触发单击事件会导致原始事件未传递到单击处理程序?

最佳答案

完全模拟鼠标点击并不像看起来那么简单。在这里您可以找到它的详细代码(不使用 jQuery):https://stackoverflow.com/a/6158050/405623

从功能 Angular 来看,您可能可以拥有想要在行中的任何点击上运行的功能,并在内部定义它是什么类型的事件。我的意思是摆脱生成事件,以便在一个地方处理它们。

关于javascript - jQuery触发触发点击事件但不发送事件数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28650942/

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