我希望能够使用按下按钮时调用的 Javascript 函数动态地将 Java 小程序插入网页中。 (在页面加载时加载小程序会减慢速度太多,冻结浏览器等...)我使用以下代码,它在 FF 中无缝工作,但在 IE8、Safari 4 和 Chrome 中失败,没有错误消息。有谁知道为什么这不能按预期工作,以及如何以适用于所有浏览器的方式动态插入小程序?我尝试过使用document.write()
正如其他地方所建议的,但是在页面加载后调用该方法会导致页面被删除,所以这对我来说不是一个选择。
function createPlayer(parentElem)
{
// The abc variable is declared and set here
player = document.createElement('object');
player.setAttribute("classid", "java:TunePlayer.class");
player.setAttribute("archive", "TunePlayer.class,PlayerListener.class,abc4j.jar");
player.setAttribute("codeType", "application/x-java-applet");
player.id = "tuneplayer";
player.setAttribute("width", 1);
player.setAttribute("height", 1);
param = document.createElement('param');
param.name = "abc";
param.value = abc;
player.appendChild(param);
param = document.createElement('param');
param.name = "mayscript";
param.value = true;
player.appendChild(param);
parentElem.appendChild(player);
}
document.write()
将覆盖您的整个文档。如果您想保留文档,并且只想添加一个小程序,则需要附加它。
var app = document.createElement('applet');
app.id= 'Java';
app.archive= 'Java.jar';
app.code= 'Java.class';
app.width = '400';
app.height = '10';
document.getElementsByTagName('body')[0].appendChild(app);
此代码将添加小程序作为 body 标记的最后一个元素。确保在 DOM 处理之后运行它,否则您将收到错误。推荐使用 Body OnLoad 或 jQuery。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)