有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

Javascript无法查看java函数

我正在网页中嵌入一个小程序,并试图调用小程序中的函数,但当我单击按钮并调用“doit()”函数时,出现错误“Object不支持属性或方法'setDestination'。小程序已加载并显示在屏幕上

Java代码(编译并放入名为webcam.jar的签名jar中):

import javax.swing.JApplet;

public class MyAppletLauncher extends JApplet {

    private JarClassLoader jcl;

   public void setDestination()
    {
       System.out.println("MyAppletLauncher: setdestination!");
       System.out.println(url);
    }

    @Override
    public void init() {
        jcl = new JarClassLoader();
        try {
            jcl.initApplet("webcam", this);
        } catch (Throwable e) {
            e.printStackTrace();
        }
    }

    @Override
    public void start() {
        jcl.startApplet();
    }

    @Override
    public void stop() {
        jcl.stopApplet();
    }

    @Override
    public void destroy() {
        jcl.destroyApplet();
    }

} // class MyAppletLauncher

以下是HTML:

<HTML><BODY>
<applet id=cameraapplet name="camerax" code="MyAppletLauncher.class" height="100%" width="100%" archive="webcam.jar">
</applet>
<SCRIPT type="text/javascript">
function doit() {
alert(1);
document.camerax.setDestination(); // Dies on this line
alert(2);
}
</Script>
<input type=button onclick='doit();'>
</BODY></HTML>

共 (1) 个答案

  1. # 1 楼答案

    使用小程序id获取对小程序对象的引用:

    document.getElementById("cameraapplet").setDestination(); 
    

    但是请注意,HTML5不支持<applet>标记Read this article关于如何使用 <embed><object>用于Java小程序