【问题标题】:window.location problemwindow.location 问题
【发布时间】:2010-12-28 16:50:01
【问题描述】:

我在 ie6 中遇到了奇怪的问题。

当我使用 window.location 通过 javascript 重定向页面时,它在除 ie6 之外的所有浏览器中都可以正常工作。

如果我像下面这样放置,它可以在 ie 6 中工作:

<a href="javascript:void(0);" onclick="javascript:window.location('http://www.demo.com');">demo</a>

但它不适用于以下代码。

<a href="javascript:void(0);" onclick="javascript:redirect();>demo</a>
function redirect()
{
  window.location('http://www.demo.com');"
}

你能弄清楚这是什么问题吗?

谢谢。

阿维纳什

【问题讨论】:

    标签: javascript browser internet-explorer-6


    【解决方案1】:

    javascript: 协议仅在 URL 中有 Javascript 代码时使用。如果你把它放在一个事件处理程序中,它就会变成一个标签。

    location 成员不是函数,而是对象。设置href 属性以更改位置。

    你在函数中的代码行后面多了一个引号,这可能导致语法错误。

    <a href="javascript:void(0);" onclick="redirect();>demo</a>
    
    <script type="text/javascript">
    function redirect() {
      window.location.href = 'http://www.demo.com';
    }
    </script>
    

    【讨论】:

    • @Guffa:设置 window.location 仍然有效。试试看:window.location = "http://stackoverflow.com";。虽然语法错误很好,但我必须承认我忽略了它:)
    • @Andy:将 url 分配给位置对象仅适用于某些浏览器。
    • @Guffa:啊,很公平。不过,我很想知道它在哪些顶级浏览器中不起作用(如果有的话)。
    【解决方案2】:

    这样做怎么样:

    <a href="#" onclick="redirect(); return false;">
      demo
    </a>
    

    【讨论】:

    • @aaron,我不确定你的意思,你能详细说明一下吗?
    • @Aaron:他在哪里说 window.location 是一个函数?
    【解决方案3】:

    如果您希望页面在用户单击链接时重定向到demo.html,我敢建议您使用通用的跨浏览器&lt;a href="demo.html"&gt;demo&lt;/a&gt;吗?

    【讨论】:

    • @Phil:你不认为他在问题中写的代码可能只是他正在尝试做的事情的简化示例吗?
    • @Andy E:是的,但他没有向我们展示这一点。如果他想要一个 js 函数来更改窗口位置,那将是一个不同的问题 - 具体示例是超链接中的重定向。一个不太简单的问题可能会有所帮助 - 当用户单击链接时让 javascript 运行不是同一个问题。
    【解决方案4】:

    试试:

    window.location.href = 'http://www.demo.com';
    

    在函数中。

    【讨论】:

      【解决方案5】:

      试试:

      window.event.returnValue = false; document.location.href='http://www.demo.com';

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2019-08-10
        • 1970-01-01
        • 2018-03-15
        • 2014-11-25
        • 2011-07-13
        • 2015-12-19
        • 2011-10-05
        • 2013-02-14
        相关资源
        最近更新 更多