Vaadin Grid在iOS/Safari下双击事件未触发问题求助
Vaadin 23.1.0 iOS Safari兼容问题:Grid双击事件无响应
问题现象
使用Vaadin 23.1.0开发响应式Web应用时,遇到仅在iPhone设备Safari浏览器下出现的专属兼容问题:
- Grid组件的项双击事件完全无法触发,该功能在Windows、macOS、Android等其余所有平台均运行正常,从未出现异常
- 同页面普通按钮的单击事件可在iOS Safari下正常响应,仅Grid项的双击事件无响应
- 额外测试发现Context Menu组件在iOS端可正常弹出,但始终无法获取选中的项,返回值恒为
null,疑似与Grid双击问题为同一根因导致
复现代码
@PageTitle("IosTestView") @Route(value = "IosTestView", layout = MainLayout.class) @PermitAll @Log4j2 public class IosTestView extends VerticalLayout { public IosTestView() { H2 h2 = new H2("IOS Test View"); add(h2); List<String> testData = Arrays.asList("One", "Two", "Three", "Four", "Five"); Grid<String> testGrid = new Grid<>(); testGrid.addColumn(new ComponentRenderer<>(a -> new Button("Go", b -> show(a)))); testGrid.addColumn(a -> a); testGrid.addItemDoubleClickListener(a -> show(a.getItem())); testGrid.setItems(testData); add(testGrid); } private void show(String msg) { Notification notification = new Notification(); notification.setPosition(Notification.Position.MIDDLE); notification.setText("Item : " + msg); notification.setDuration(5000); notification.open(); } }
修复诉求
- 寻找可落地的简便修复方案
- 不接受额外添加按钮替代原生双击交互的实现方式
内容的提问来源于stack exchange,提问作者Stefan Möller
相关产品推荐
相关产品推荐

