Internet Explorer 中的对象






1.64/5 (5投票s)
2006年6月3日

18775
简单的代码,用于消除 Internet Explorer 在对象中生成的框架
引言
这段代码只是一个简单的演示,如何消除“框架”(允许交互性)与“OBJECT”对象,而无需修改代码中包含的所有对象。
如何实现
很简单,你只需要添加一个 *.js 文件(如果直接将代码放在 HTML 代码中,则无法工作)到你的 HTML 代码的底部,并包含以下代码
function gestionFlashObj() { var navegador_ = navigator.appName; if (navegador_ == "Microsoft Internet Explorer") { var obj; var i=document.getElementsByTagName("OBJECT").length -1; var aux=""; if (i<0) return; while (aux!= null) { aux=document.getElementsByTagName("OBJECT")[i].outerHTML; document.getElementsByTagName("OBJECT")[i].outerHTML="<div id='objectoOb"+i+"'></div>"; escribirPAntalla(document.getElementById("objectoOb"+i),aux); i--; }; if (i<0) return; aux=document.getElementsByTagName("OBJECT")[i]; } } } function escribirPAntalla(aux,cont) { if (aux!=null || cont!=null){ aux.innerHTML=cont; } } gestionFlashObj();
...你可以看到,我只是通过 js 改变了对象,用另一个对象替换它们。
重要提示:你需要小心 HTML 代码中的 "base" 标签,因为当 js 执行时,“base” 标签将不再生效。