Blazor 中的@ondblclick 事件也会触发 2 个单击事件
@ondblclick event in Blazor also fires 2 single click events
在 Blazor WebAssembly 中考虑以下内容:
<span @onclick="Click" @ondblclick="DoubleClick">Click Me!</span>
@code {
private void Click()
{
Console.WriteLine("Click");
}
private void DoubleClick()
{
Console.WriteLine("Double-click");
}
}
如果我双击该元素,我将在控制台中看到的是:
Click
Click
Double-click
有没有办法在不触发两次单击事件的情况下接收双击事件?我想将这两个事件用于不同的目的,因此它们相互干扰。
非常感谢任何建议。
这可能与 ondblclick
事件的运作方式有关。
引用自 MDN:https://developer.mozilla.org/en-US/docs/Web/API/GlobalEventHandlers/ondblclick
The dblclick event is raised when the user double clicks an element. It fires after two click events.
所以您看到的是它的工作方式:\
因此,如果在这段时间内没有发生 double-click 事件,您可能必须在一小段延迟后触发 single-click 操作。
在 Blazor WebAssembly 中考虑以下内容:
<span @onclick="Click" @ondblclick="DoubleClick">Click Me!</span>
@code {
private void Click()
{
Console.WriteLine("Click");
}
private void DoubleClick()
{
Console.WriteLine("Double-click");
}
}
如果我双击该元素,我将在控制台中看到的是:
Click
Click
Double-click
有没有办法在不触发两次单击事件的情况下接收双击事件?我想将这两个事件用于不同的目的,因此它们相互干扰。
非常感谢任何建议。
这可能与 ondblclick
事件的运作方式有关。
引用自 MDN:https://developer.mozilla.org/en-US/docs/Web/API/GlobalEventHandlers/ondblclick
The dblclick event is raised when the user double clicks an element. It fires after two click events.
所以您看到的是它的工作方式:\
因此,如果在这段时间内没有发生 double-click 事件,您可能必须在一小段延迟后触发 single-click 操作。