完成了applet之后就要开始写JavaScript部分了。因为JavaScript也被浏览器解释,所以可以方便地与applet进行交互。
//
@author Zenny Chen
// First loaded javascript function for communication with the specified applet
function accessApplet()
... {
if(window.document.testApplet != null) ...{
var ip = window.location.href;
window.document.testApplet.setSocketURL(ip);
window.document.testApplet.setMayRun(true);
setTimeout("loopProcessApplet()", 1000);
}
}
function loopProcessApplet()
... {
processApplet();
setTimeout("loopProcessApplet()", 1000);
}
function processApplet()
... {
if(window.document.testApplet == null)
return;
var str = window.document.testApplet.getURLName();
if(str != "") ...{
window.document.testApplet.clearURLName();
var win = window.open(str,"","height=300,top=100,left=100,toolbar=no,menubar=no,status=no");
win.close();
}
}
// First loaded javascript function for communication with the two specified applets
function accessAppletDual()
... {
var ip = window.location.href;
if(window.document.testApplet != null) ...{
window.document.testApplet.setSocketURL(ip);
window.document.testApplet.setMayRun(true);
}
if(window.document.testApplet2 != null) ...{
window.document.testApplet2.setSocketURL(ip);
if(window.document.testApplet == null)
window.document.testApplet2.setMayRun(true);
}
if(window.document.testApplet == null && window.document.testApplet2 == null)
return;
setTimeout("loopProcessAppletDual()", 1000);
}
function loopProcessAppletDual()
... {
processAppletDual();
setTimeout("loopProcessAppletDual()", 1000);
}
function processAppletDual()
... {
if(window.document.testApplet != null) ...{
var str = window.document.testApplet.getURLName();
if(str != "") ...{
window.document.testApplet.clearURLName();
var win = window.open(str ,"","height=300,top=100,left=100,toolbar=no,menubar=no,status=no");
win.close();
}
}
if(window.document.testApplet2 != null) ...{
if(!window.document.testApplet2.GetIsOver()) ...{
if(window.document.testApplet == null)
window.document.testApplet2.setMayRun(true);
else
window.document.testApplet2.setMayRun(window.document.testApplet.GetIsOver());
}
var str = window.document.testApplet2.getURLName();
if(str != "") ...{
window.document.testApplet2.clearURLName();
var win = window.open(str ,"","height=300,top=100,left=100,toolbar=no,menubar=no,status=no");
win.close();
}
}
}
// First loaded javascript function for communication with the specified applet
function accessApplet()
... {
if(window.document.testApplet != null) ...{
var ip = window.location.href;
window.document.testApplet.setSocketURL(ip);
window.document.testApplet.setMayRun(true);
setTimeout("loopProcessApplet()", 1000);
}
}
function loopProcessApplet()
... {
processApplet();
setTimeout("loopProcessApplet()", 1000);
}
function processApplet()
... {
if(window.document.testApplet == null)
return;
var str = window.document.testApplet.getURLName();
if(str != "") ...{
window.document.testApplet.clearURLName();
var win = window.open(str,"","height=300,top=100,left=100,toolbar=no,menubar=no,status=no");
win.close();
}
}
// First loaded javascript function for communication with the two specified applets
function accessAppletDual()
... {
var ip = window.location.href;
if(window.document.testApplet != null) ...{
window.document.testApplet.setSocketURL(ip);
window.document.testApplet.setMayRun(true);
}
if(window.document.testApplet2 != null) ...{
window.document.testApplet2.setSocketURL(ip);
if(window.document.testApplet == null)
window.document.testApplet2.setMayRun(true);
}
if(window.document.testApplet == null && window.document.testApplet2 == null)
return;
setTimeout("loopProcessAppletDual()", 1000);
}
function loopProcessAppletDual()
... {
processAppletDual();
setTimeout("loopProcessAppletDual()", 1000);
}
function processAppletDual()
... {
if(window.document.testApplet != null) ...{
var str = window.document.testApplet.getURLName();
if(str != "") ...{
window.document.testApplet.clearURLName();
var win = window.open(str ,"","height=300,top=100,left=100,toolbar=no,menubar=no,status=no");
win.close();
}
}
if(window.document.testApplet2 != null) ...{
if(!window.document.testApplet2.GetIsOver()) ...{
if(window.document.testApplet == null)
window.document.testApplet2.setMayRun(true);
else
window.document.testApplet2.setMayRun(window.document.testApplet.GetIsOver());
}
var str = window.document.testApplet2.getURLName();
if(str != "") ...{
window.document.testApplet2.clearURLName();
var win = window.open(str ,"","height=300,top=100,left=100,toolbar=no,menubar=no,status=no");
win.close();
}
}
}
以上代码包括两个部分,accessApplet() 、loopProcessApplet()和processApplet()用于在一个Web中控制一个applet。而后面含有Dual的则是一个页面中含有两个这样的applet需要由JavaScript进行控制。