URL中#号(井号)的作用
1. 井號在URL中指定的是頁面中的一個位置
? 井號作為頁面定位符出現(xiàn)在URL中,比如:http://www.httpwatch.com/features.htm#print ,此URL表示在頁面features.htm中print的位置。瀏覽器讀取這個URL后,會自動將print位置滾動至可視區(qū)域。
在頁面上添加錨點的方法為:<a name=”print”></a>或使用<div id=”print” >。
2.井號后面的數(shù)據(jù)不會發(fā)送到HTTP請求中
當時使用類似HttpWatch工具時,你是無法在Http請求中找到井號后面的參數(shù)的,原因是井號后面的參數(shù)是針對瀏覽器起作用的而不是服務器端。
3. 任務位于井號后面的字符都是位置標識符
不管第一個井號后面跟的是什么參數(shù),只要是在井號后面的參數(shù)一律看成是位置標識符。
比如這樣一個鏈接(http://example.com/?color=#ffff&shape=circle),后面跟的參數(shù)是顏色和形狀,但是服務器卻并不能理解URL中的含義。服務器接收到的只是:
4. 改變井號后面的參數(shù)不會觸發(fā)頁面的重新加載但是會留下一個歷史記錄
僅改變井號后面的內(nèi)容,只會使瀏覽器滾動到相應的位置,并不會重現(xiàn)加載頁面。
比如從http://www.httpwatch.com/features.htm#filter到http://www.httpwatch.com/features.htm#print, 瀏覽器并不會去重新請求頁面,但是此操作會在瀏覽器的歷史記錄中添加一次記錄,即你可以通過返回按鈕回答上次的位置。這個特性對Ajax來說特別的有用, 可以通過設置不同井號值,來表示不同的訪問狀態(tài),并返回不同的內(nèi)容給用戶。(注:在IE6和IE7下井號的改變不會增加歷史記錄。)
5、可以通過javascript使用window.location.hash來改變井號后面的值
window.location.hash這個屬性可以對URL中的井號參數(shù)進行修改,基于這個原理,我們可以在不重載頁面的前提下創(chuàng)造一天新的訪問記錄。如標記框架頁面當前的頁面:
除此之外,HTML 5新增的onhashchange事件,當#值發(fā)生變化時,就會觸發(fā)這個事件。
6. Googlebot對井號的過濾機制
默認情況下Google在索引頁面的時候會忽略井號后面
轉(zhuǎn)載于:https://www.cnblogs.com/huaku/archive/2013/04/24/3040294.html
總結(jié)
以上是生活随笔為你收集整理的URL中#号(井号)的作用的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: JAVA-Lambda表达式
- 下一篇: 第四章 面向对象