Java Installed vs Java在浏览器中启用

时间:2013-06-11 14:55:18

标签: java javascript applet deployjava

有没有办法检测您的计算机上是否安装了java,或者是否在浏览器上禁用了java。我们在应用程序中使用java applet,但在加载applet之前,我们使用“deployJava.js”。遗憾的是,即使在浏览器上禁用Java,它也表示没有安装java。

有没有办法区分是否安装了Java或禁用了Java,最好是使用javascript。我也尝试使用“navigator.javaEnabled()”,但它给我的结果与使用“deployJava.js”相同。

3 个答案:

答案 0 :(得分:1)

你不能。

如果可以的话,那会非常烦人。已经有足够的信息从浏览器泄漏到页面,如果它开始告诉人们我已经安装了什么,但我表面上已经禁用了,那将非常烦人。

我想为它设想一个API是可能和有用的,但是在当前状态下没有任何一个:要么使用插件,要么不使用。它是否已安装并不重要。

我想你必须通过在面向用户的消息中声明需要安装或启用Java来解决它。或者您可以提供下载诊断工具来运行它并在本地检查它,这可能是另一种可行的替代方案,尽管有明显烦人的额外步骤(以及一个额外的工具供您支持)。

答案 1 :(得分:1)

  1. 向相关HTML页面添加重定向。重定向到javaNotEnabledOrNotInstalled.html(但想到一个不太具描述性和愚蠢的名称)。
  2. 在applet init()的早期,请调用JS取消重定向。

  3. 另请注意,在传统的applet元素中..

    <applet 
      code=.. 
      width=.. 
      height=.. 
      alt='Java is installed but disabled!'>
    No Java Plug-In installed in this browser.  Get Java free from..
    </applet>
    

    在这种情况下,如果根本没有安装Java,用户应该看到..

      

    此浏览器中未安装Java插件。让Java免费..

    但是,如果安装了Java但已禁用,则应该看到..

      

    已安装Java但已禁用!

答案 2 :(得分:0)