【问题标题】:window.location alternatives in JavaScriptJavaScript 中的 window.location 替代方案
【发布时间】:2010-06-02 13:37:29
【问题描述】:

window.location.href 属性的标准化替代方案是什么?我在 w3schools.com 上检查它在所有主要浏览器中都实现了,所以没有问题,但我很好奇如何正确地做到这一点。

从这里声明功能不规范:https://developer.mozilla.org/en/DOM/window.location

谢谢!

【问题讨论】:

  • hreflocation 对象的属性而不是方法。而且您使用它不会有任何问题..(标准是使用链接而不是 javascript 在站点中导航;)
  • 已修复 :-) 我正在重写我的问题..
  • document.URL 返回一个字符串,它是当前文档的 url,如果页面被重定向,它可能不是 location.href 值。

标签: javascript redirect


【解决方案1】:

window 对象可以追溯到 Netscape 2.0 中的原始 JavaScript 实现,并且从那时起,location 已存在于每个浏览器中。

DOM 之外的浏览器对象模型传统上没有被标准化,但随着 HTML5 的变化,它显式记录了the window objectits location property

【讨论】:

    【解决方案2】:

    设置window.location没有错。

    【讨论】:

      【解决方案3】:

      没有标准化的方法。重定向浏览器最受支持的方法是使用location 对象的href 属性:

      window.location.href = "http://www.google.com/";
      

      【讨论】:

        【解决方案4】:

        使用 location.href 会对 WordPress 仪表板产生附带影响。
        如果我添加了使用location.href 进行导航的按钮,它会弹出一个警报,询问我是否要离开页面而不保存。

        使用location.replace 效果很好。它的描述解释了它与其他替代方案assign() 的区别:

        Location 接口的 replace() 方法将当前资源替换为提供的 URL 中的资源。与assign() 方法的不同之处在于,在使用replace() 之后,当前页面将不会保存在会话历史记录中,这意味着用户将无法使用返回按钮导航到该页面。

        【讨论】:

          猜你喜欢
          • 2017-04-05
          • 2014-02-10
          • 1970-01-01
          • 1970-01-01
          • 2016-09-30
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2012-01-19
          相关资源
          最近更新 更多