这可能吗?
在进入一个站点之前,它应该检查是否安装了java,并且在重定向到指定页面之前必须是特定版本。
无法使用javascript,因为它可以被用户关闭。
Java 小程序不能用于检查,因为它可以被用户禁用
谢谢。
最佳答案
我认为假设某人会禁用 JS 但安装并启用了 Java 是天真的。
- JS 自带浏览器,Java 没有。
- JS 默认启用,必须明确禁用。
- 当今的许多网站要么依赖 JS,要么在启用 JS 时提供更流畅的用户体验。
- deployJava.js 是 Sun/Oracle 提供的最新策略,用于检查浏览器是否具有 在运行小程序或包括 JWS 的启动链接之前指定最低 Java 版本 应用程序。如果过去 2-3 年 90% 的小程序部署者都使用该脚本,您认为 有没有可能在禁用 JS 的浏览器中安装并启用 Java?
Sun 以前确保小程序具有所需插件版本的方法是使用
HTMLConverter,它生成了被验证服务讨厌的嵌套 OBJECT
/EMBED
元素
(以及任何自尊的网络开发人员)。这个无效的 HTML 没有使用 JS 或 Java 来做它所做的事情,
这一切都依赖于 HTML 和浏览器/用户对上述元素采取行动的能力和意愿。
但是我不推荐使用这种方法,我认为 deployJava.js 是实现它的更好方法。
如果你真的坚持千方百计确定用户的Java,并且不介意 '打破后退按钮',还有其他可以使用的技术。例如。有一系列的页面。
- 第一页有一个元刷新重定向到
nojs.html
设置在 NN 秒,并使用 JS 重定向到hasjs.html
立即。 - Java 的
hasjs.html
测试:- Detect if Java is enabled
- 使用类似于
javascript:alert(java.lang.System.getProperty('java.version'))
的方式检查 Java 版本。它在地址中工作 FF 栏弹出一个对话框,在此框上报告1.6.0_24
。 - (最后)确定小程序本身是 Activity 的(而不是在运行时崩溃/拒绝), 见Detect if an Applet is ready .
因此可以看出,JS 不仅能够检查 Java 是否已启用,还可以检查版本以及任何特定小程序是否已成功加载。
关于java - 如何在不使用 java applet 检查和不使用 javascript 的情况下检测是否安装了 java 并知道其版本?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5812977/