Как уже отмечалось выше, как только пользователь нажимает на что-то, что изменяет страницу, скрипты с использованием JavaFX больше не работают.Сценарий JavaFX не работает после смены страниц
hello.html
<div onclick="app.byeBye()">bye</div>
byebye.html
<div onclick="app.hello()">hello</div>
JavaApp.class
public class JavaApp{
public void hello(){
//process some stuff here
setURL("/hello.html");
}
public void byeBye(){
//process some stuff here
setURL("/byebye.html");
}
private void setURL(final String uriString){
Platform.runLater(new Runnable(){
public void run(){
JSObject win = (JSObject) webViewPanel.getWebEngine().executeScript("window");
win.setMember("app", new JavaApp());
webViewPanel.loadURL(Browser.class.getResource(uriString).toExternalForm());
}
});
}
}
Что я должен сделать, чтобы исправить эту проблему?
Try, чтобы получить объект окна и установить «приложение» после того, как двигатель WebView в загружает URL успешно. А именно, когда состояние двигателя является State.SUCCEEDED. См. Javadoc WebEngine. –