我有一个JavaFX
WebView
正在使用后台消息更新并执行脚本来更新页面。
webEngine.getLoadWorker().stateProperty().addListener(
new ChangeListener<State>() {
public void changed(ObservableValue ov, State oldState, State newState) {
if (newState == State.SUCCEEDED) {
try {
webEngine.executeScript("foo1();");
} catch (Exception e) {
// JSException: TypeError: 'undefined' is not a function
}
}
}
});
这通常可以正常运行,但是当我用它自己创建第二个 并尝试在第二页上执行时,与在第一页上执行的时间大致相同,我得到了这个:WebView
WebEngine
foo2()
foo1
JSException:TypeError:“未定义”不是函数
我可以有一个同步块,但似乎应该没有必要,因为 webEngines 应该是独立的,还有其他解决方案吗?