加载页面时是否可以在头部插入<meta />标签?

时间:2013-10-29 21:45:33

标签: javascript html iframe x-ua-compatible

我在这里有一个尴尬的场景,这将是一个黑客,但我没有选择,所以请忍受我。我有一个第三方Web应用程序,其主页上嵌入了内容持有者。在内容持有者中,您可以指定自己的和Javascript。这是我可以进行HTML / javascript编辑的唯一地方。我无法访问页面的其余部分。

我正在处理的项目使用这些内容持有者来托管指向MyCustomWebPage的iframe。 MyCustomWebPage上有一个“X-UA兼容”元标记。不幸的是,由于它托管在iframe中,因此第三方Web应用程序页面设置似乎覆盖了MyCustomWebPage上的设置。这意味着我的“X-UA兼容”元标记无法正常/被忽略/等。

因此,我想知道在内容持有者加载时是否可以将“X-UA兼容”元标记附加到第三方Web应用程序的元素。它目前没有“X-UA兼容”Meta标签。我找到了以下关于如何从另一个stackoverflow帖子追加元标记的示例。

在我的内容持有者中,我现在有以下内容:

<script language="javascript">
//<![CDATA[
       function metafix() { 
               var iefix=document.createElement('meta');
               iefix.setAttribute("http-equiv", "X-UA-Compatible");
               iefix.setAttribute("content", "IE=9");

               var x = document.getElementsByTagName('head')[0];
               alert(x); 

               document.getElementsByTagName('head')[0].appendChild(iefix);
            }
   metafix();
   //]]>
   </script>

   <iframe style="WIDTH: 100%; HEIGHT: 515px" id="MyCustomWebPage"  src="www.mycustomwebpage.web" width="100%"></iframe>

CDATA标记由第三方Web应用程序的内容编辑器自动插入。现在,我知道这段代码正在执行,因为当页面加载时,我会看到alert(x)。它说对象,所以我知道它正在寻找元素。问题是,“X-UA兼容”Meta标签拒绝附加到元素。做一个“查看源”确认了这一点。这就像appendChild(iefix)永远不会执行。

为什么会发生这种情况,我该如何强制执行该代码,以便将标记附加到第三方Web应用程序的元素中?

0 个答案:

没有答案