使用Javascript更改IE文档模式?

10

能否使用JavaScript更改IE文档模式?我不会在这里深入细节,但我正在与一个受限制的Drupal网站作斗争,该网站不允许我访问编辑主题文件。显然,正确的做法是像这样编写head中的内容:

<meta http-equiv="X-UA-Compatible" content="IE=8">

但是,正如我所提到的,我无法访问页面的那部分内容,因此我希望我可以使用JavaScript......就像这样:

document.getElementsByTagName('head')[0].appendChild('<meta http-equiv="X-UA-Compatible" content="IE=IEVersion">');

遗憾的是,这并不起作用。


2
如果这是可能的,那就太好了,但我担心不行。 - Pointy
你有访问Web服务器的权限吗?如果是这样,你可以在页面中使用X-UA-Compatible HTTP头来提供服务。 - Matty F
@matty 我希望我可以!不幸的是,我的访问权限非常有限。基本上,我无法编辑任何Drupal文件或主题文件,也无法添加新文件。我只能通过JavaScript来操作网站的结构。可悲的是,我认为这是一个无法挽回的局面。 - Sam
1
我认为这个标头相当无用,因为您可以将CSS修复程序针对特定版本的IE进行传送。您希望添加它的原因是什么? - Matty F
如果您发现自己需要这个东西,那么一定是某处出了很大的问题。肯定有更好的方法。也许您应该扩展那些“细枝末节的细节”。 - thirtydot
1个回答

0

你现在有点棘手了。这个怎么样?

if (navigator.userAgent.indexOf("MSIE 7.0")) {
    // add conditional css in here
} else {
    // default css
}

有点笨重,但可以用;谢谢!如果我能够编辑头部内容,这根本不是问题(叹气...)。不过我应该能够朝这个方向继续前进。 - Sam
1
如果没有“!= -1”,这将无法正常工作,因为indexof返回数字而不是true/false。更改代码if (navigator.userAgent.indexOf("MSIE 7.0") != -1),如果不想接受“编辑建议”。 - Jubin Patel

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接