zoukankan      html  css  js  c++  java
  • 在浏览器窗口中加载新的url


    通常,在前端页面中如果需要跳转到指定页面,可以通过<a>标签进行跳转。
    而在某些情况下,比如ajax调用之后想直接跳转到指定页面,想跳转页面不能再用<a>标签实现。
    此时,可以通过浏览器Location对象实现。


    Location对象包含有关当前URL的信息。
    Location对象是 Window 对象的一个部分,可通过window.location属性来访问。
    通过Location对象改变当前浏览器窗口的url,有3种方式:

    1. 直接设置Location对象的href属性为指定URL:window.location.href = url;
    2. 调用Location对象assign(url)方法加载新的文档:window.location.assign(url);
    3. 调用Location对象replace(url)方法用新的文档替换当前文档:window.location.replace(url);

    3种方式都可以达到相同的目的,但是对于浏览器来说,他们是存在区别的:
    (1)设置href属性和assign()方法都是加载一个新的文档,并且会在History对象中生成一个新的记录
    (2)replace()方法是用一个新文档取代当前文档:replace()方法不会在History对象中生成一个新的记录。当使用该方法时,新的URL将覆盖History对象中的当前记录。

    具体来说,如果需要在浏览器中点击前进/后退按钮查看访问历史时,不能使用replace()方法,只能调用assign()方法或者设置href属性实现。
    详见:http://www.w3school.com.cn/jsref/met_loc_replace.asp

  • 相关阅读:
    浏览器之window对象--javascript
    CSS3盒子模型
    CSS3动画以及animation事件
    CSS3响应式布局
    原生JS实现tab切换--web前端开发
    html5表单与PHP交互
    UITableView 的坑
    多线程:Operation(二)
    多线程:Operation(一)
    GCD(Swift)
  • 原文地址:https://www.cnblogs.com/nuccch/p/6861911.html
Copyright © 2011-2022 走看看