php - 使用哈希(#)代替查询字符串有什么好处

标签 php jquery html

在检查实时邮件 URL 时,我发现他们使用 # 而不是 查询字符串

https://bluxxx.mail.live.com/#n=xxxxxxxxx&fid=x

当删除 # 时,会出现 404 错误。使用 # 代替查询字符串有什么优点吗?可以在php应用程序中实现吗?

最佳答案

散列 URL 通常用于代替实际返回服务器的另一个页面(即,页面加载被 Javascript 拦截)。<​​/p>

哈希值及其后面的任何内容通常不会发送到服务器...

想象一下以下场景...

<a id="SomeLink" href="#DoSomething">

然后您使用 Javascript 附加一个 onclick...

$("#SomeLink").click(function() {...})

如果该点击函数不返回 false,则该 URL 现在将在其末尾添加一个 #DoSomething,即使对服务器的请求尚未返回已完成。

它还可以用作操作历史记录的占位符,以便您可以更好地控制后退/前进按钮(或许多其他客户端 javscript 技巧)。请参阅history.js举个例子。

关于php - 使用哈希(#)代替查询字符串有什么好处,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18072834/

相关文章:

Php表单不向MySql数据库提交数据

javascript - 如何使用 jQuery 迭代选择 html 选项,具体取决于另一个选择 html 元素的选项值

javascript - 无法使用 electronjs 和 jquery 显示 OpenDialog

html - 行不在一条线上

PHP 配置文件不会加载 IIS7 x64

php - 一般错误 : 1 near ")": syntax error") in Laravel 5. 6.33

html - 将一个div放在一个新行上(由 float <ul>元素引起的问题)

c++ - 如何开发一个将在带有 <OBJECT> 标签的浏览器中执行的 IE 插件

php - 如何纠正 "SQLSTATE[42000]: Syntax error or access violation: 1064 "错误

javascript - 如何从 'each' 迭代器获取对象字段。 'this' 上下文错误