2012-10-13 42 views

回答

19

url中的散列和感嘆號稱爲hashbang,通常用於JavaScript應用程序,其中javascript負責實際加載頁面。散列之後的內容永遠不會發送到服務器。例如,如果你有網址example.com/#!recipes/bread。在這種情況下,example.com中的頁面將從服務器獲取,這可能包含一段javascript。然後該腳本可以從location.hash中讀取,並加載頁面/recipes/bread

Google也將此URL方案識別爲AJAX網址,並嘗試從服務器獲取內容,因爲它將由您的JavaScript呈現。如果您打算使用此技術製作網站,請查看google's AJAX crawling documentation for webmasters。另外請記住,你不應該依靠JavaScript被啓用,因爲012b

在許多網站hashbang正在使用,即使如果javascript做路由。這是可能的,因爲所有主流瀏覽器都支持history API。爲此,他們讓網站上的每個路徑都返回相同的Javascript,然後查看要在內容中加載的實際url。當用戶點擊一個鏈接時,JavaScript截獲click事件,並使用History API將新頁面推送到瀏覽器歷史記錄中,然後加載新內容。

+1

Thanx很多的信息:) –

+1

不客氣, – bigblind