如何在JavaScript中引用Java的类

zr 2000-08-28 05:41:00
如何在JavaScript中引用Java的类(代码尽量完整,谢谢)。
exp :
java.io.file.exists()
...全文
237 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
skyyoung 2000-09-05
  • 打赏
  • 举报
回复
[Java applet]
import java.awt.*;
import java.applet.*;
public class inJava extends Applet{
public void sayHello() {
Graphics g = getGraphics();
g.drawString("Hello from JAVA!", 10, 10);
}
}




[Javascript and HTML (Netscape)]
<HTML><HEAD></HEAD><BODY>
<SCRIPT>
alert("Screen Dimension\n" +
" width:" +
java.awt.Toolkit.getDefaultToolkit().getScreenSize().width +
" height:" +
java.awt.Toolkit.getDefaultToolkit().getScreenSize().height);
</SCRIPT>
<FORM>
<INPUT type="button" value="call JAVA"
onClick = "document.myApplet.sayHello()">
</FORM>
<APPLET CODE="inJava.class"
NAME="myApplet"
HEIGHT=100 WIDTH=100>
</APPLET>
</BODY></HTML>




NOTE: On IE4 or better, you can't call java.lang.* methods directly from Javascript or Jscript. IE javascript can only access the public methods of an applet (a class derived from java.applet.Applet) but don't have a general access to other java classes . So the solution is simple, wrap the java.lang.* call in a public method of a "dummy" Applet.

import java.awt.*;
import java.applet.*;
// to be called from javascript (IE and Netscape ok)
public class inJava extends Applet{
public integer getScreenWidth() {
return Toolkit.getDefaultToolkit().getScreenSize().width);
}
public integer getScreenHeight() {
return Toolkit.getDefaultToolkit().getScreenSize().height);
}
}




[Javascript and HTML (IE and Netscape)] <HTML><HEAD></HEAD><BODY>
<SCRIPT>
function getScreenDimension() {
alert("Screen Dimension\r\n width:" +
document.myApplet.getScreenWidth() +
" height:" +
document.myApplet.getScreenHeight() );
}
</SCRIPT>
<FORM>
<INPUT type="button" value="call JAVA"
onClick = "getScreenDimension()">
</FORM>
<APPLET CODE="inJava.class"
NAME="myApplet"
HEIGHT=100 WIDTH=100>
</APPLET>
</BODY></HTML>




NOTE: This for demonstration only. On N4 or IE4, it's better to use screen.height and screen.width properties directly. There is no need for a Java Applet!
Kevin_qing 2000-08-28
  • 打赏
  • 举报
回复
好象需要Nescape的一个插件支持

87,904

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧