Javascript 检测小程序何时加载

Javascript 检测小程序何时加载,javascript,load,applet,Javascript,Load,Applet,如何在不轮询浏览器/使用setTimout的情况下检测java小程序是否已成功加载 有什么我可以参加的活动吗 问题是:有一个弹出窗口询问用户是否信任小程序, 这需要几秒钟,直到用户单击“是” ,同时,我的代码无法执行,因为小程序尚未加载。您是说来自javascript? 您可以询问小程序。让它在init()中将布尔值设置为true,并在调用的方法中返回该值。。。哦,等等,你写了“不使用setTimeout”。好吧,在这种情况下,我想你必须反过来,让你的小程序调用一个javascript方法(例如

如何在不轮询浏览器/使用setTimout的情况下检测java小程序是否已成功加载

有什么我可以参加的活动吗

问题是:有一个弹出窗口询问用户是否信任小程序, 这需要几秒钟,直到用户单击“是” ,同时,我的代码无法执行,因为小程序尚未加载。

您是说来自javascript?
您可以询问小程序。让它在init()中将布尔值设置为true,并在调用的方法中返回该值。。。哦,等等,你写了“不使用setTimeout”。好吧,在这种情况下,我想你必须反过来,让你的小程序调用一个javascript方法(例如使用JSObject.getWindow(this);)。。。但我认为这比在加载applet之前使用计时器更困难/更容易出现错误。

我知道这个问题已经很老了,但我更喜欢这样做,因为Java加载屏幕很难实现,而使用spin.js设置全屏div则不是,是告诉小程序调用JavaScript函数,该函数在java小程序的init()函数运行时隐藏加载div

从Java调用JavaScript函数非常简单:

import java.net.*;

public void init() {
    if (!isJava5OrSuperior()) {
      showError(getLocalizedString("requirementsMessage"));
    } else {
      createAppletApplication();
      try {
        getAppletContext().showDocument
          (new URL("javascript:appletReady()"));
        }
      catch (MalformedURLException me) { }
    }
  }

这将调用页面的appletReady()函数,无论它是从另一个JS文件链接的还是直接在HTML中编写的,只要Applet本身运行。因此,您不必无限期地轮询小程序,只需在其就绪时运行该函数。

我最终使用计时器来指示小程序何时加载,这比其他选项更简单