是否可以在客户端浏览器的URL字段中重写URL?
因此,当一个人点击我页面上的链接时会发生ajax(例如显示一个标签)我想让网址显示动作而不刷新页面.
这可能吗?
Tom*_*ley 25
当其他人回答这个问题时,他们是对的,无法在javascript中更改网址.使用HTML5和现代浏览器,它现在正在使用HTML5 History API
关于它的diveintohtml5.info文章.这是另一个很好的博客文章解释这个功能.
检查caniuse.com的浏览器兼容性.
有一些库,例如History.js,它们包含API,并使用hashbangs为旧浏览器进行pollyfill.
Emi*_*röm 14
您可以更改URL的哈希/锚点部分(在#之后).URL的其余部分是只读的.
location.hash = "#value";
Run Code Online (Sandbox Code Playgroud)
URL 重写是不可能的,但是使用散列附加动作数据是很常见的.例如,Facebook广泛使用它:
http://www.facebook.com/#!/username
^
Run Code Online (Sandbox Code Playgroud)
哈希之后的所有内容都只是同一页面中的锚点数据,您可以整天通过脚本进行修改.
较新的浏览器还提供onhashchanged事件,因此您可以对"URL"进行更改而不是不断轮询它.
| 归档时间: |
|
| 查看次数: |
19581 次 |
| 最近记录: |