JavaFx web不使用带有JRE7的Internet Explorer 11

JavaFx web不使用带有JRE7的Internet Explorer 11,javafx,internet-explorer-11,Javafx,Internet Explorer 11,我注意到我不能在web IE 11上启动。。 我知道IE11的用户代理是Trident而不是MSIE。所以我想,为什么我总是收到安装java的通知,即使java已经安装了。。但我暂时找不到解决这个问题的方法,因为大家通过更新webstart的deployJava.js并添加带有“msie”的“trident”来解决这个问题 请注意,只有windows 7才能安装IE11或其与windows 8.1捆绑的产品。。无法在windows 8上安装IE11或将其更新为IE11 我的问题是: 1-Java

我注意到我不能在web IE 11上启动。。 我知道IE11的用户代理是Trident而不是MSIE。所以我想,为什么我总是收到安装java的通知,即使java已经安装了。。但我暂时找不到解决这个问题的方法,因为大家通过更新webstart的deployJava.js并添加带有“msie”的“trident”来解决这个问题

请注意,只有windows 7才能安装IE11或其与windows 8.1捆绑的产品。。无法在windows 8上安装IE11或将其更新为IE11

我的问题是:

1-JavaFX应用程序在哪里检测浏览器代理

2-是否有可能修改负责此操作的包并将jar包含到项目中


欢迎任何意见

Internet Explorer 11不是一个应用程序

您可以通过请求Internet Explorer 11的支持。您可以在功能请求中链接回此问题

我猜你在问题中的意思是,与早期的浏览器版本相比,微软在IE11中发布的信息和发布方式发生了变化。这些更改意味着当前的JavaFX部署代码无法正确检测到它正在IE11环境中运行,并且无法执行适当的操作以使JavaFX应用程序能够在IE11中执行


我相信JavaFX打包代码使用脚本来检测目标浏览器。对于JavaFX8,这个检测例程(我相信)就是一种方法。要获得IE11兼容性,您可能需要做的是托管您自己的部署脚本,并将本地部署脚本中的dtjava.js替换为您创建的与IE 11兼容的修改版本(关于如何执行此操作的详细说明不在本回答的范围内)。即使您确实让dtjava.js脚本正确识别并执行IE 11的逻辑,在IE 11中运行JavaFX可能还有其他问题(因为它目前不是一个受支持的部署平台)。

我在dtjava.js中做了一些修改,并使其在IE11中工作

在我的例子中,我使用dtjava.js只是为了嵌入一个不基于JavaFX的小程序,所以这些修改可能不足以使JavaFX应用程序运行

我将IE检测规则从

ie = isDef(window.execScript);

detectEnv()中

init()函数中


当然,这些都是未经测试的骇客改动(只有Explorer 10、11和最新的FIrefox和Chrome)。请自行承担风险…

正如您所说,这是针对applet而非JavaFX的。但感谢您与我们分享您的解决方案。。。
ie = /trident/.test(u);
if (isDef(d.addEventListener)) {
    d.addEventListener("DOMContentLoaded",
    invokeCallbacks, false);
}
if (ua.ie && ua.win) {
if (isDef(d.addEventListener)) {
    d.addEventListener("DOMContentLoaded",
    invokeCallbacks, false);
}
else if (isDef(d.attachEvent)) {