window.location.hash解析(URL中的?#)

12 篇文章 1 订阅
11 篇文章 0 订阅

location是javascript里边管理地址栏的内置对象,

location对象:设置或获取当前URL的信息

使用location对象可以设置或返回URL中的一些信息,一个完整的URL地址的格式为:

协议://主机:端口/路径名称?搜索条件#hash标识(在hash标示里面可以含‘?’等字符都属于location.hash,例如#nihao?id=1,这个id并不在GET请求参数里面)

其中,协议是URL的起始部分,用于指定该URL地 址所采用的通信协议,比如http、ftp等;主机是指该URL所对应的服务器的名称;端口用于指定服务器用于通信的端口号,与主机名之间使用冒号隔开; 路径名称是指该URL所对应的网页文件在服务器上的虚拟路径;如果页面中含有锚点连接,可以使用hash标志指定页面中的锚点标志,该标志以“#”开头; 搜索条件是指URL中所含有的查询条件,该查询条件以“?”开头,以“变量名称=值”的形式出现,多个查询条件之间使用连接符“&”连接。比 如:http://upc.edu.cn:8080/wwwroot/ index.html?id=3876#topicID。

利用location对象可以方便地设置或获取URL中的各种信息,本节将详细介绍location对象的一些常用属性和方法。

1.hash属性

【功能说明】设置或获取URL中的锚点名称,如果Web页面中使用的锚点连接,通过设置location对象的hash属性可以方便的跳转到页面中的不同部分。

【基本语法】location.hash

下面的代码演示了如何在网页中使用location对象的hash标志快速定位页面中的 内容。

【实例演示】

<script>

    function getAnchor(str)

    {

      window.location.hash=str;

    }

</script>

<body>

  //创建锚点链接,快速定位网页内容

  <a href="javascript:getAnchor('jueju');">杜甫 绝句</a>

  <a href="javascript:getAnchor('yijianmei');">李清照 一剪梅</a>

  <a href="javascript:getAnchor('hanghelou');">崔颢 黄鹤楼</a>

  //下面定义了3个锚点

  <a name="jueju"><center>绝句</center>

  <!--古诗内容省略,见源代码-->

  </a><br><br><br><br><br>

  <a name="yijianmei"><center>一剪梅</center>

  <!--古诗内容省略,见源代码-->

  </a><br><br><br><br><br>

  <a name="hanghelou"><center>黄鹤楼</center>

  <!--古诗内容省略,见源代码--> 

  </a>

</body>

这段代码在一个网页文件中创建了3个锚点链接, 单击其中任一个链接,程序就会调用getAnchor函数来设置location对象的hash属性为相应的值,以使页面滚动到指定的内容上。

原文章:http://hi.baidu.com/tiffany87625/item/ddb59c12247f91f19c778a8a

自己补充下:里面可以放隐藏、攻击代码。通过eval(location.hash.substr(1))调用~

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值