我们理解哈希用于AJAX搜索,但是感叹号?有人知道吗?
此外,其搜索表单的“操作”属性指向“/搜索”,但是当您进行搜索时,网址中会出现哈希感叹号。他们只是从“/ search”重定向到“/#!/ search”吗?
注意: q的第二部分仍然没有答案:也就是说,他们是将用户从“/ search”重定向到“/#!/ search”,还是将用户发送给“/ search”并在页面上使用JS来重写URL? - Crashalot 1月26日23:51
谢谢!
答案 0 :(得分:31)
它已成为Google建立的事实标准,以确保一致性并使ajax网址可以抓取。
请参阅http://code.google.com/web/ajaxcrawling/docs/getting-started.html
我相信他们正在使用history.pushState
。您可以在控制台中执行history.back()
,它会引导您返回页面。
答案 1 :(得分:23)
是的,它使用HTTP 302重定向。
顺便说一句,“!”用于消除空哈希的情况。 “http:// url#”将使浏览器滑到顶部。
答案 2 :(得分:9)
接下来回答第二部分:它将您重定向到/#!/ search。
如果您在转到http://twitter.com/britishdev(插头插件)时查看响应标头,则会返回302(临时重定向),并将Location标头设置为“Location:http://twitter.com/#!/britishdev”
是的JavaScript然后在目标网页上提取您的所有详细信息,但无论您将其重定向到哪里。