首页 > 解决方案 > D3 js对Android-Webview中的拖动事件没有反应

问题描述

我有一个包含 d3.js (v5) 图的 Android-webview。最近,该图表停止响应多个设备上的任何事件(拖动、单击、缩放)。我没有更新代码库,所以我猜它与 Android 更新有关?

我使用 chrome devtools 进行远程 Webview 调试,但我没有找到根本原因。我曾经monitorEvents跟踪事件。并且缩放和拖动功能再次开始工作,直到我使用unmonitorEvents.

任何想法,为什么这些事件会突然停止工作以及副作用是monitorEvents什么?

谢谢你的帮助 :)

PS:网页在没有 webview 的情况下工作。

你好世界图

节点是可点击的,整个图形可以移动或放大和缩小。

EDIT2: 找到了第一个解决方案。 经过一番搜索,我发现了这个https://developers.google.com/web/updates/2016/10/pointer-events:鼠标和触摸动作的新事件。monitorEvents正在addEventListener为所有onpointer{something}修复 d3 代码的人做事。

现在,我正在将转储侦听器添加到 root 。这看起来很丑陋。什么是正确的行动?

标签: androidd3.jseventsandroid-webviewpointer-events

解决方案


推荐阅读