65.9K
CodeProject 正在变化。 阅读更多。
Home

Internet Explorer 中的对象

starIcon
emptyStarIcon
starIcon
emptyStarIconemptyStarIconemptyStarIcon

1.64/5 (5投票s)

2006年6月3日

viewsIcon

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” 标签将不再生效。


 

© . All rights reserved.