我正在开发一个JSP / JSF页面,其中两个applet使用tag嵌入。 问题是第一个小程序有一些信息将在页面上更新,第二个小程序必须使用该信息正确加载。
我找不到可以控制applet调用的方法。 (这些applet是第三方applet,我可以将两个applet结合起来)。我想知道如何知道第一个小程序已加载,然后调用/启用或显示第二个小程序。
下面是我在页面上用于applet的标签。
<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”,然后是故意没有透露的最后一次。 任何技术都适合我。
答案 0 :(得分:0)
你可以在第一个小程序中混合使用javascript代码
public void init() {
JSObject document = JSObject.getWindow(this);
String evalString = "document.getElementById('secondAppletPanel').innerHTML = ";
document.eval(evalString + secondAppletHtmlString);
}
现在你可以构建一个字符串,其中包含由你的第一个applet计算的参数,也可以修改字符串内容 您需要使用id secondAppletPanel放置并清空div,您希望显示第二个小程序,并将 mayscript 属性添加到您的第一个小程序中(更多信息JSObject )