2011-01-19 79 views
32

我們理解的哈希是AJAX搜索,但感嘆號?有人知道嗎?Twitter爲什麼在網址中使用哈希和感嘆號,他們如何重寫搜索網址?

此外,「行動」屬性的搜索表單點「/搜索,」但是當你進行搜索,哈希感嘆號出現在URL。他們只是從「/ search」重定向到「/#!/ search」?

注:的q的第二部分仍然沒有答案:那就是,他們在重定向從「/搜索」用戶「!/#/搜索」,還是他們向用戶發送到「/搜索」並使用頁面上的JS來重寫URL? - Crashalot 1月26日在23:51

謝謝!

+0

可能重複的[Facebook中有什麼是shebang/hashbang(#!)和新的Twitter URL?](http://stackoverflow.com/questions/3009380/whats-the-shebang-hashbang-in-facebook-和新的Twitter的URL換) - 至少第一部分反正 – BoltClock 2012-04-16 17:59:22

回答

30

它已經成爲事實上的標準,谷歌已經建立,以確保一致性,使AJAX網址抓取。

http://code.google.com/web/ajaxcrawling/docs/getting-started.html

我相信他們正在使用history.pushState。您可以在控制檯中執行history.back(),它會將您引導回頁面。

+1

其實,我意識到問題的第二部分,仍然沒有答案。也就是說,他們將用戶從「/ search」重定向到「/#!/ search」,還是將用戶發送到「/ search」並在頁面上使用JS來重寫URL? – Crashalot 2011-01-26 23:51:32

23

是的,這與HTTP 302

重定向順便說一句, 「!」用於消除空散列的情況。 「http:// url#」將使瀏覽器滑動到頂部。

+1

,也爲這個 http://code.google.com/web/ajaxcrawling/docs/getting-started.html – Ergec 2011-07-14 12:11:39