【发布时间】:2015-06-18 20:48:02
【问题描述】:
我有一个呈现图形的 JavaFX Webview(使用 D3)。我想在 JavaFX 应用程序中的此图上实现“鼠标滚动缩放”(当鼠标悬停在 webview 顶部时)。我能够使用以下 d3 js 代码在网络浏览器上成功完成此操作
var svg = d3.select("body").append("svg")
.attr("width", width)
.attr("height", height)
.call(d3.behavior.zoom().on("zoom", zoomHandler))
.append('g');
function zoomHandler() {
svg.attr("transform",
"translate(" + d3.event.translate + ")"
+ " scale(" + d3.event.scale + ")");
}
但是如果我在 JavaFX 应用程序的 WebView 中执行类似的操作,则图形最初会在 WebView 中呈现,但在滚动时,它只会消失,并且只有在我将鼠标滚动回到初始位置时才会重新出现(当应用程序启动时)
以下代码是我如何使用 WebView 来渲染图形
final URL urlLoadMainGraph = getClass().getResource("html/MainGraph.html");
weMainGraph.load(urlLoadMainGraph.toExternalForm());
正在做的事情有什么问题吗?
谢谢
【问题讨论】:
标签: javascript d3.js webview javafx javafx-8