document.location不会改变IE9中的网页?

时间:2011-11-23 16:19:25

标签: javascript dom internet-explorer-9

我正在尝试重定向到IE9(9.0.3)中的其他页面。

当我尝试设置document.locationdocument.location.hrefwindow.location / window.location.href时,我无法这样做。它没有给出任何错误就失败了。

我试图检查文档和窗口对象是否已设置,并且它们是,所以我不知道为什么位置对象是"缺少"。

我尝试获取document.URL并且工作正常,但它是只读的。

任何人都知道问题是什么或如何以跨浏览器的方式实现这一目标?

5 个答案:

答案 0 :(得分:9)

我也遇到了同样的问题,但发现添加了

window.event.returnValue = false;

在重定向之前的javascript中的行解决了问题。

答案 1 :(得分:1)

请参阅:http://social.msdn.microsoft.com/Forums/en/iewebdevelopment/thread/c864ae63-66f6-4656-bcae-86b0018d70c9

显然这是一个缓存错误,您可以通过在目标网址上附加时间戳来解决问题(即每次都使用“唯一”网址)。

答案 2 :(得分:1)

也许你的IE9有一些安全限制,阻止JavaScript引导URL。 window.location.href =“”应该在IE9上正常工作。

答案 3 :(得分:0)

缓存可能是原因,请尝试:

location.href='something.php?tmp=' + Date.parse(new Date())

希望有所帮助

答案 4 :(得分:0)

您应该使用绝对网址:

  

var url ='/ section / page /';
  var host = window.location.hostname;
  window.location ='http://'+ host + url;

其中url是您网页的相对路径。