gpt4 book ai didi

javascript - 显示 OpenLayers map 时 JavaFX WebView 不准确

转载 作者:太空宇宙 更新时间:2023-11-04 11:37:44 31 4
gpt4 key购买 nike

我有一个 JavaFX 应用程序,它将 OpenLayers 合并到其 WebView 中。我有一个简单的弹出窗口,当您将鼠标移到某个功能上时,它会显示该功能的名称。我面临的问题是 WebView 内部发生的任何事情都是非常不准确的。例如,当触发弹出窗口时,它不会在鼠标移开该功能后立即消失。我准备了一个小要点来强调这个问题here 。我在 JavaFX for WebView 中使用此代码:

private void initialize() {
WebView view = new WebView();
webEngine = view.getEngine();

URL urlOpenLayers = getClass().getResource("/html/trainmap.html");
webEngine.setJavaScriptEnabled(true);
webEngine.load(urlOpenOpenLayers.toExternalForm());
}

我在这里发布了这个而不是 GIS StackExchange,因为这似乎是 JavaFX WebView 问题而不是 OpenLayers 的问题。相同的代码在 Chrome 中按预期工作。

这是我调用 view.getEngine().getUserAgent() 时的 WebView 版本:Mozilla/5.0 (Linux x86_64) AppleWebKit/602.1 (KHTML,如 Gecko) JavaFX/8.0 Safari/602.1

最佳答案

WebView 似乎正在使用 Java Graphics 2D API 来渲染网页。运行一些测试后,很明显 JavaFX 的这个组件已经多年没有更新,因此无法与许多现代 Web 内容(例如 OpenLayers)一起使用。

我遇到的一个解决方案是切换到 JxBrowser,它在 Chromium 上运行。需要注意的是,JxBrowser 不是免费使用的,但它有 30 天的试用期。

关于javascript - 显示 OpenLayers map 时 JavaFX WebView 不准确,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43093698/

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