zoukankan      html  css  js  c++  java
  • JS基础知识梳理---location()对象

    (一) 简介

    location对象是一个较为特别的对象,既是window对象的属性也是document对象的属性。location对象的用处不仅仅表现在保存着当前文档的信息,还能将URL解析成独立的片段。

    location.port;//返回当前服务器的端口号,如果不存在,返回空值
    location.hostname;//仅仅返回服务器名称
    location.host;//返回服务器的名称还有端口号(如果存在的话)
    location.href;//返回当前页面的完整地址==location.toString()
    location.pathname;//返回URL中的目录和文件名称
    location.protocol;//返回当前页使用的协议类型。http||https
    location.search;//返回URL的查询字符串,以问好开头

    (二) 方法

    1:使用assign(strUrl);立即打开新的strUrl,并在浏览器中生成一条记录。如果将location.href 或者 window.location设置成strUrl,也会调用assign()方法

    location.assign("http://www.uncle-yang.com");
    //等价于↓↓↓↓
    window.location = "http://www.uncle-yang.com";
    //等价于↓↓↓↓
    location.href = "http://www.uncle-yang.com";

    2:修改location对象的属性也可以改变当前加载的页面

    //假设初始URL为 http://www.uncle-yang.com/demo
    
    //将URL修改为 http://www.uncle-yang.com/demo/#sectionA
    location.hash = "#sectionA";
    
    //将URL修改为 http://www.uncle-yang.com/?q=name
    location.search = "?q=name";
    
    //将URL修改为 http://www.baidu.com/demo
    location.hostname = 'www.baidu/com';
    
    //将URL修改为 http://www.uncle-yang.com/index
    location.pathname = 'index';
    
    //将URL修改为 http://www.uncle-yang.com:8080/index
    location.port = '8080';

    每次修改location的属性(hash除外),页面都会以新得URL重新加载 

    3:当通过上述的任何一种方式修改URL的时候,浏览器历史记录中就会产生一条新的记录,用户可以通过点击“后退”导航的前一个页面。要禁止这种行为,可以使用replace(strURL)方法。只接受一个要打开的URL字符串,浏览器的位置会变,但是不再能回到前一个页面。

    4:当前页面重新加载。reload(boole);如果页面自上次请求没有改变过,那么会直接从缓存中读取数据。如果强制从服务器重新加载,那么就需要传递参数true;

  • 相关阅读:
    20155328 《网络攻防》 实验一:PC平台逆向破解(5)M
    20155328 《信息安全系统设计基础》 课程总结
    构建之法
    20155327 2017-2018-2《Java程序设计》课程总结
    20155327 实验五 网络编程与安全
    20155327 网络对抗 实验
    20155327 Exp9 Web安全基础
    20155327 EXP8 Web基础
    20155327 实验四 Android程序设计
    20155327 李百乾 Exp7 网络欺诈防范
  • 原文地址:https://www.cnblogs.com/xxyy1122/p/4887186.html
Copyright © 2011-2022 走看看