Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/405.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
JavaFXLiveConnect-从FX应用程序调用javascript函数_Java_Javascript_Applet_Javafx 2_Liveconnect - Fatal编程技术网

JavaFXLiveConnect-从FX应用程序调用javascript函数

JavaFXLiveConnect-从FX应用程序调用javascript函数,java,javascript,applet,javafx-2,liveconnect,Java,Javascript,Applet,Javafx 2,Liveconnect,我面临一个问题,我需要从JavaFX应用程序到浏览器进行通信。在此之前,我发现以下信息: var jsObject = netscape.javascript.JSObject.getWindow(applet); jsObject.call("show_alert", []); 通过这个,我可以访问JavaScript函数。但是我的JavaFX应用程序不是小程序(没有实现JApplet)。 那么,我可以为getWindow()提供什么作为输入呢 有什么建议吗?阅读评论不清楚您的JavaFX代

我面临一个问题,我需要从JavaFX应用程序到浏览器进行通信。在此之前,我发现以下信息:

var jsObject = netscape.javascript.JSObject.getWindow(applet);
jsObject.call("show_alert", []);
通过这个,我可以访问JavaScript函数。但是我的JavaFX应用程序不是小程序(没有实现
JApplet
)。 那么,我可以为getWindow()提供什么作为输入呢


有什么建议吗?

阅读评论不清楚您的JavaFX代码是嵌入在web浏览器页面中运行的(换句话说,是小程序),还是其他配置。但是,您应该从使用以下命令开始

JSObject jsWin = getHostServices().getWebContext();
if (jsWin != null) {
    jsWin.eval("show_alert();");
}
如果这不起作用,请说明什么不起作用以及具体的运行时配置是什么


getHostServices()
是JavaFX
应用程序上的一个方法,如文档所述,并且。

我正在尝试此方法,并参考您如何运行此应用程序?它是否嵌入到网页中?如果没有,您就没有机会在浏览器中访问JS。@Andrew Thompson Ya我只在网页中访问。Andrew Thompson问的是您是通过JavaFX应用程序中的嵌入式WebView访问JavaScript,还是JavaFX应用程序作为webstart/浏览器运行?在第一种情况下您可以,而在后一种情况下您不能。@francisOpt在webStart中,我需要通过浏览器(applet)访问。