【发布时间】:2015-01-22 02:11:06
【问题描述】:
我正在使用 JavaScript 访问 JAVA 小程序中的方法。
小程序以这种方式嵌入到 HTML 页面中:
<object
class="cn" id="testapplet-object"
classid="clsid:8AD9C840-044E-11D1-B3E9-00805F499D93"
width="300" height="300"
codebase="http://java.sun.com/update/1.6.0/jinstall-6u30-windows-i586.cab#Version=1,6,0,0">
<param name="archive" value="TestCom.jar" />
<param name="code" value="TestCom.class" />
<param name="scriptable" value="true" />
<param name="mayscript" value="mayscript" />
<embed class="cn" id="testapplet-embed"
type="application/x-java-applet;version=1.6"
width="300" height="300"
archive="TestCom.jar"
code="TestCom.class"
pluginspage="http://java.com/download/"
myParam="My Param Value",
mayscript="mayscript" />
</embed>
</object>
这个小程序下面有一个按钮,按钮相关代码如下:
var applet = document.getElementById("testapplet-object");
var btn = document.getElementById("btn");
btn.addEventListener("click",function(){
applet.callAppletMethod();
});
问题是:此代码仅适用于 IE。为了让它在 Firefox 中工作,我必须将“testapplet-embed”传递给 getElementById(但它不会在 IE 中工作)。
是否有任何跨浏览器方式来声明我的小程序变量?
【问题讨论】:
-
如何同时使用这两种方法?
-
你试过用JSObject吗?
-
第一个问题:不能放同一个id,id应该是唯一的。第二个问题:我用的是JSObject但是小程序代码不是问题。
标签: java javascript dom browser applet