我尝试在 html5 和 javascript 中使用 java 应用程序,但当我尝试以下操作时,Chrome 总是崩溃:
在html5文档中我有这个:
<FORM>
<INPUT type="button" value="call JAVA" onClick = "test()">
</FORM>
<object name="application" type="application/x-java-applet" height="300" width="550" >
<param name="code" value="loader"/>
<param name="java_arguments" value="-Djnlp.packEnabled=true"/>
</object>
在 javascript 文件中,我使用此函数(onclick test() 函数)
function test() {
var app = document.getElementById("applet_test");
alert("Screen Dimension\r\n width:" +
app.getScreenWidth() + " height:" +
app.getScreenHeight() );
}
最后这是 applet_test.java 文件:
import java.applet.*;
import java.awt.*;
public class applet_test extends Applet
{ public int getScreenWidth() {
return Toolkit.getDefaultToolkit().getScreenSize().width;
}
public int getScreenHeight() {
return Toolkit.getDefaultToolkit().getScreenSize().height;
}
public void main(String [] args) {
}
}
有人知道为什么这不起作用吗? Eclipse 还提示在 html5 文档中使用小程序:
Element (applet) is obsolete. Its use is discouraged in HTML5
这会导致麻烦吗?如果是的话,如何使用元素获得相同的结果?
最佳答案
这对我有用。
<!DOCTYPE html>
<html lang="en"><FORM>
<head>
<script>
function test() {
var app = document.applet_test;
alert("Screen Dimension\r\n width:" + app.getScreenWidth()
+ " height:" + app.getScreenHeight());
}
</script>
<body>
<INPUT type="button" value="call JAVA"
onClick = "test()">
</FORM>
<object name="applet_test" type="application/x-java-applet" height="300" width="550" >
<param name="code" value="loader.class"/>
</object>
</body>
</html>
关于java - javascript 中 java 方法调用导致 chrome 崩溃,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9932657/