JavaFXWebView正确阻止某些URL

JavaFXWebView正确阻止某些URL,javafx,javafx-webengine,Javafx,Javafx Webengine,我试图在JavaFXWebView中用某个关键字阻止URL。到目前为止,我已经尝试使用webEngine.locationProperty.addListener来侦听状态的更改。虽然这成功地阻止了URL,但不幸的是,它将locationProperty设置为我试图阻止的值。这会导致使用页面上引用的链接出现问题 为将locationProperty设置回其正确值,我尝试了两种解决方案: 调用webEngine.load。这会导致页面刷新,用户会丢失工作。 正在调用webEngine.getHis

我试图在JavaFXWebView中用某个关键字阻止URL。到目前为止,我已经尝试使用webEngine.locationProperty.addListener来侦听状态的更改。虽然这成功地阻止了URL,但不幸的是,它将locationProperty设置为我试图阻止的值。这会导致使用页面上引用的链接出现问题

为将locationProperty设置回其正确值,我尝试了两种解决方案:

调用webEngine.load。这会导致页面刷新,用户会丢失工作。 正在调用webEngine.getHistory.go0。正如文档中所说,这没有任何作用。 我可以想出两种解决这个问题的一般方法:

在属性链中找到比locationProperty更早的位置,该位置将更改为侦听。 找出一种无需重新加载页面即可将locationProperty更改回其正确值的方法。我认为这可能是通过我一直在努力避免的反思实现的。
这两种解决方案听起来合理吗?如果合理,那么实施它们的最佳方式是什么?

我认为这有点不同,但明天我将研究其他一些答案,看看是否可以将它们合并到一起。@sea与我需要弄清楚如何更改当前位置不同