0

我正在使用标签嵌入两个小程序的 JSP/JSF 页面。问题是第一个小程序有一些将在页面上更新的信息,而第二个小程序必须使用该信息才能正确加载。

我找不到可以控制小程序调用的方法。(这些小程序是第三方小程序,否则我可以结合两个小程序)。我想知道如何知道第一个小程序已加载,然后调用/启用或显示第二个小程序。

以下是我在页面上用于小程序的标签。

<object
              name="CSHelper" id="CSHelperId"
              classid="clsid:9C840-044E-11D1-B3E9-5F499D93" 
              width="100%" 
              HEIGHT="0" 
              ALIGN="middle" 
              codebase="http://java.sun.com/update/1.5.0/jinstall-1_5_0_11-windows-i586.cab#Version=1,5,0,11">

              <param name="code" value="ClientUtil"/>
              <param name="ARCHIVE" value="HelperApplet.jar"/>

            </object>


              <object style="display:none"
                  name="ivrTelephonyBarName" id="ivrTelephonyBarId"
                  classid="clsid:89C840-044E-11D1-B3E9-0599D93"
                  width="100%"
                  HEIGHT="75"
                  ALIGN="middle"
                  codebase="http://java.sun.com/update/1.5.0/jinstall-1_5_0_11-windows-i586.cab#Version=1,5,0,11">

                  <param name="code" value="<%=cTIConnectionParams.getAppletJarClass()%>"/>
                  <param name="ARCHIVE" value="<%=cTIConnectionParams.getAppletJar()%>"/>

                  <param id="AGENT_ID" name="AGENT_ID" value="<%=cTIConnectionParams.getAgentID()%>"/>
                  <%--<param id="sAgentID" name="sAgentID" value="0202"/>--%>
                  <param id="AGENT_PASS" name="AGENT_PASS" value="<%=cTIConnectionParams.getAgentPassword()%>"/>
                  <param id="INSTRUMENT" name="INSTRUMENT" value="<%=cTIConnectionParams.getInstrument()%>"/>

                  <param id="params" name="params" value="<%=cTIConnectionParams.getParams()%>"/>

                  <param id="iconsPath" name="iconsPath" value="<%=contextCtiUrl%>images/appletIcons/"/>
                  <param id="configPath" name="configPath" value="<%=contextCtiUrl%>"/>
              </object>

我想先加载“CSHelperId”,然后再加载最后一个不是故意透析的。任何技术都对我有用。

4

1 回答 1

0

你可以在你的第一个小程序中混合 javascript 代码

    public void init() {
       JSObject document = JSObject.getWindow(this);
       String evalString = "document.getElementById('secondAppletPanel').innerHTML = ";
       document.eval(evalString + secondAppletHtmlString);
    }

现在您可以使用由您的第一个小程序修改字符串内容计算的参数构建一个字符串,还需要在您希望第二个小程序出现的位置放置并清空 id 为 secondAppletPanel 的 div,并将mayscript属性添加到您的第一个小程序(更多信息JSObject )

于 2013-05-15T17:59:11.523 回答