使用jQuery更改URL而不重新加载页面
如何在不重新加载页面的情况下使用jQuery更改URL?
设置location.hash
jQuery与它无关,这是基本的DOM 0。
您只能通过location.hash
更改url的哈希部分而不刷新页面。 添加get参数( ?foo=bar
)或完整的url更改将始终重新加载页面。
在HTML5中,您可以获得更多更改URL的选项,但是现在(2010年)它还不可行,因为糟糕的浏览器很难消失。
通常,不考虑新的HTML历史API 。
可以在散列后将数据添加到URL(使用location.hash
David Dorward描述的location.hash
)。 但是,如果要执行此操作以影响页面的行为,则还需要通过jQuery读取这些更改(或由设置哈希的相同进程触发)。
在History API之外,您将无法添加参数,并且页面“只需了解它”。