/?q =#/ URL查询字符串?

时间:2013-03-23 17:15:26

标签: php javascript url

查询字符串中的

/?q=#/,有时我在facebook和twitter的URL中看到它是什么以及为什么使用它?

请详细说明。我在谷歌大部分时间查询它但没有找到满意的结果。

我认为它在基于Ajax的框架中使用。

2 个答案:

答案 0 :(得分:3)

用于在不完全重新加载页面的情况下更新页面的URL。 /?q=只是查询字符串中的空变量。但是,#之后的所有内容实际上都在URL的哈希部分中。它最初用于自动将页面滚动到锚点(<a name="blah">)。它可以通过JavaScript访问,因为它不会重新加载页面,所以它非常适合在复制粘贴到URL框时工作的URL,当你在页面上执行操作时更改,但仍然可以保存所有内容。

很快:/?q=是查询字符串#/中的空变量,之后的所有内容都是JavaScript要处理的数据。哈希字符串中的斜杠使它看起来像是目录结构的一部分。

答案 1 :(得分:2)

RFC 3986的第3部分可能会有所帮助。

/?q=是一个查询字符串,其中名为q的参数为空/空。

#之后的所有内容都称为片段。有时它用于跳转到页面上的书签,但通常只是浏览器中运行的Javascript可以使用的一些数据。如果您在URL中#之后更改了部分,则您的页面不会重新加载,但是,浏览器中的Javascript可以对其做出反应。