我正在JavaFX中调用Java代码形式的Javascript。我的问题是关于“有时javascript在Java代码中击中了我的函数。有时它没有击中该动作”甚至我都没有在Java代码或javascript中进行任何更改。 为什么会这样?请告诉我 是Jdk问题吗?我正在使用jdk1.8.0_151。
这是我的代码,可以正常工作。但有时不是。
webEngine.getLoadWorker().stateProperty().addListener(new ChangeListener<Worker.State>() {
@Override
public void changed(ObservableValue<? extends Worker.State> observableValue, Worker.State oldState, Worker.State newState) {
if (newState == Worker.State.SUCCEEDED) {
JSObject window = (JSObject) webEngine.executeScript("window");
// The two objects are named using the setMember() method.
window.setMember("signinJSHelper", new SigninJSHelper());
}
}
});
现在使用javascript ...! “ SubmitLoginForm是SigninJSHelper类中的一个函数”
function Submit() {
alert('When Sign in button Click this function will call');
var name = $("#txtUserName").val();
var password = $("#password").val();
var output = signinJSHelper.SubmitLoginForm(name, password);
}
它可以正常运行,但可以正常运行,但是有时我停止并再次运行JavaFX应用程序则无法运行。 请帮我弄清楚这个吗? 非常感谢..!