日期:2014-05-16  浏览次数:20459 次

applet和javascript的通信

在Java Applet小程序中使用JavaScript

??? Live Connect提供了Java与JavaScript的接口,可以允许在Java Applet小程序中使用JavaScript。具体步骤如下:1) 在HTML脚本中使用〈APPLET〉标志的MAYSCRIPT属性,以允许Java Applet小程序访问脚本;2) 将netscape. JavaScript包导入Java Applet小程序;(这个包在C:\Program Files\Java\jdk1.5.0_06\jre\lib\plugin.jar(jdk1.5)中,jsobject.jar<下载后改成jsobject.jar就行,其他名字也行,后缀必须是jar>)

??? 3)在Java Applet小程序中用JSObject类的getWindow(方法创建JavaScript窗口的句柄;

??? 4)在Java Applet小程序中用JSObject类的getMember(方法访问JavaScript对象;

??? 5) 在Java Applet小程序中用JSObject类的eval(方法调用JavaScript方法。

??? 示例:

??? “ReadForm. Java”

??? import netscape.javascript.JSObject;import netscape.javascript.JSException;

??? ……

??? win=JSObject.getWindow(this); // 获取JavaScript窗口句柄,引用当前文档窗口doc=(JSObject)win.getMember("document"); // 访问JavaScript对象form=(JSObject)doc.getMember("textForm");textField=(JSObject)form.getMember("textField");text=(String) textField.getMember("value"); //获取文本区的值

??? ……

??? win.eval("alert(\"This alert comes from Java!\")");

??? //调用JavaScript的alert()方法,当然也可以是用户自己写的JavaScript函数,如下:

??? window.eval("testFunction()");????

2.JavaScript访问Applet
??

       <applet name="appletName" ....../>         //JavaScript访问Applet属性         window.document.appletName.appletField  (属性必须是public的,"window.document."也可以不写)        //JavaScript访问Applet方法         window.document.appletName.appletMethod  (方法必须是public的,"window.document."也可以不写)