BOM 中的location对象和history对象

  • location 对象

    • location 对象是window对象下的一个属性,使用时可以省略window对象

    • location可以获取或者设置浏览地址栏的URL

<body>
    <input type="button" value="点击显示" id="btn">
    <p id="txt"></p>
    <script>
        var btn = document.getElementById("btn");
        var txt = document.getElementById("'txt");
        btn.onclick = function(){
            //输出URL地址
            txt.innerHTML = location.href;
            //重新赋值,可以跳转到新页面,并记录历史
            location.href = "http://www.baidu.com";
        };
    </script>
</body>
  • assign 委派 ,assign()方法的作用 与href属性一样,可以跳转新页面
location.assign("http://www.baidu.com");
  • replace 替换,替换掉地址栏当前地址,不记录历史,无法回退
<input type="button" value="点击" id="btn">
    <script>
        var btn = document.getElementById("btn");
        btn.onclick = function(){
           location.replace("http://www.baidu.com");
        };
    </script> 
  • reload 重新加载,与F5(类似于false效果刷新)刷新一样,ctrl + F5强制刷新
    参数:true:强制从服务器获取页面;false 如果浏览器有缓存页面的话,会直接从缓存中获取页面
location.reload(true);
  • URL

    • 统一资源定位符(Uniform Resource Locator,URL)

    • URL组成:scheme://host:port/path?query#fragment

      scheme:通信协议,常用的http,ftp,maito等

      host:主机,服务器(计算机)域名系统(DNS)主机名或IP地址

      port:端口号,整数,可选,省略时使用方案的默认端口,如http默认端口号是80

      path:路径,由零或多个 ‘ / ’ 符号隔开的字符串,一般用来表示主机上的一个目录或文件地址

      query:查询,可选,用于给动态网页传递参数,可以有多个参数,用 ‘&’ 符合隔开,每个参数的名和值用 ‘=’ 符合隔开

      fragment:信息片段,字符串,锚点

  • history 对象

    • history 对象是window对象下的一个属性,使用时可省略window对象
    • history 对象可以与浏览器历史记录进行交互,浏览器历史记录是对用户所访问的页面按时间顺序进行的记录和保存。从而实现前进后退来回访问。
      • back()
      • forward()
      • go()

利用history实现页面跳转,

<body>
    <h1>一级页面</h1>
    <a href="second.html">跳转到另一个html页面</a><br>
    <input type="button" value="前进" id="btn">

    <script>
        var btn = document.getElementById("btn");
        btn.onclick = function(){
            //点击之后 查看之前记录的跳转页面
            history.forward();
            
        }
   </script>
</body>

second.html 页面回退到页面一功能

        //second.html 页面回退功能
        btn.onclick = function(){
            //点击之后 查看之前记录的跳转页面
            history.back();
        }

使用go()也可以实现页面之间的跳转,在go() 方法里, 前进就在括号里写+1,后退则-1。注意,页面层级多了,go()里的数字也要相应改变

        //go() 方法 前进+1,后退 —1
        btn.onclick = function(){
            //前进
            history.go(1);
            // 后退
            history.go(-1);

            //页面层级多了,go()里的数字也要相应改变
            // 回退两层
            history.go(-2);
        }
    </script>
</body>

一般不常用,浏览器自带有前进后退功能。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 219,753评论 6 508
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 93,668评论 3 396
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 166,090评论 0 356
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 59,010评论 1 295
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 68,054评论 6 395
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 51,806评论 1 308
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 40,484评论 3 420
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 39,380评论 0 276
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 45,873评论 1 319
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 38,021评论 3 338
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 40,158评论 1 352
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,838评论 5 346
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 41,499评论 3 331
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 32,044评论 0 22
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 33,159评论 1 272
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 48,449评论 3 374
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 45,136评论 2 356