从html <script> -node </script>运行Java代码

时间:2011-12-01 00:18:52

标签: java javascript html

我被告知代码

<script>
    alert(java.lang.System.getProperty("java.version"));
</script>

应警告浏览器中安装的java版本。

但是当我运行代码时,我得到Uncaught ReferenceError: java is not defined

我在谷歌Chrome 15中测试过,我确信我安装了java。我每天都会运行很多小程序。

代码是否有效,如果是,我该怎么做才能让它运行?

更一般地说,是否可以在<script>标记内运行任意Java代码? (注意:我知道Java和JavaScript是不同的语言。)

3 个答案:

答案 0 :(得分:2)

您无法在脚本中运行类似的Java代码。但是还有其他方法可以获得Java版本。例如,查看此page的源代码,您可以看到如何列出所有浏览器插件。你可以在这一切中找到你需要的东西(即java版本)。

答案 1 :(得分:2)

我错了。 :P

让我误解的是这个HTML:

<html>
<body>
<script type='text/javascript'>
if (typeof java === 'undefined') {
    document.write("Java is not installed.");
} else {
    document.write("java.version " + java.lang.System.getProperty("java.version"));
}
</script>
</body>
</html>

..在 FF (6.0.1)中加载时会产生类似的内容。

java.version 1.6.0_20

或者如果加载到另一个没有安装Java的FF中。

Java is not installed.

但是在两种情况下(Java和无Java)只在IE中测试它会导致:

Java is not installed.

所以它只适用于两个主要浏览器中的一个(目前,而不是下个月它可能会破坏),并且实际上没用。

对于错误的信息感到抱歉。

答案 2 :(得分:0)

基本上你被告知的是不正确的。

您正在尝试使用JavaScript代码。 JavaScript不是Java(名称有点含糊不清),你不应该错过它们。

Java是可编译语言,只能以java applet的形式在浏览器中使用,可以使用Java-plugin(类似Adobe Flash插件)嵌入到页面中。

JavaScript是几乎所有浏览器都支持的脚本语言。

这些语言之间唯一常见的是标题和命名风格。