gpt4 book ai didi

java - Vaadin 双击和浏览器行为

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

我正在开发一个带有树组件的 Vaadin 应用程序(版本 6.8.10)。我们需要对项目的双击使用react。但在我们的跨浏览器测试中,我们发现双击Firefox中并不总是有效(有时有效)。

这是我们的事件监听器代码:

 @Override
public void itemClick(ItemClickEvent event) {
* if (event.isDoubleClick()) { // Breakpoint line
// our action
}
}

在 Eclipse 中调试我们收到以下值(在每个浏览器中双击 Vaadin 收到 2 个事件后)

Chrome

收到 1° 事件

event.getButton() ==> 1

event.isDoubleClick() ==> false

event.getButtonName() ==> left

收到 2° 事件

event.getButton() ==> 1

event.isDoubleClick() ==> true

event.getButtonName() ==> left

火狐浏览器

收到 1° 事件

event.getButton() ==> 1

event.isDoubleClick() ==> false

event.getButtonName() ==> left

收到 2° 事件

event.getButton() ==> 1

event.isDoubleClick() ==> false

event.getButtonName() ==> left

继续,在 Firefox 中,我的双击被检测为两次单击!!!

你也经历过类似的事情吗?你有解决办法吗?

谢谢!

最佳答案

解决了!!

我们看到有一个旧的 Ticket (#8384) Vaadin 论坛上描述了这种行为。

建议的解决方案是在树对象上setImmediate(false),但我们想让代码更简洁,因此决定删除行setImmediate() 来自代码。我们测试了 new Tree().isImmediate() == false (默认),所以它应该可以工作。

经过大量测试、研究和调试...我决定在我们的代码中实际编写 setImmediate(false) (应该没有必要),现在神奇地,我们的代码在 Firefox 中工作正常!!!

我希望这对某人有帮助。

关于java - Vaadin 双击和浏览器行为,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15971437/

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