使用javascript更改URL链接而不刷新
是否可以自动更改url example.com/4000/title-2/#!4000到example.com/4000/title-2而不刷新页面?基本上是从URL中删除“/#!4000”。使用javascript更改URL链接而不刷新,javascript,browser-history,Javascript,Browser History,是否可以自动更改url example.com/4000/title-2/#!4000到example.com/4000/title-2而不刷新页面?基本上是从URL中删除“/#!4000”。 请注意,删除hashbang之前的“/”非常重要,而不仅仅是hashbang。不知道这是否足够,以及它是否可以完全跨浏览器工作。。。chrome接受: location.hash = ""; 但这会在地址栏中保留“#” 在完全支持html5历史api的现代浏览器中,您可以: window.history
请注意,删除hashbang之前的“/”非常重要,而不仅仅是hashbang。不知道这是否足够,以及它是否可以完全跨浏览器工作。。。chrome接受:
location.hash = "";
但这会在地址栏中保留“#”
在完全支持html5历史api的现代浏览器中,您可以:
window.history.replaceState('Object', 'Title', '/4000/title-2');
编辑:这不会更改浏览器的历史记录
编辑2:刚刚自动或通过编程找到?是否要更改。。?链接元素的
href
,或窗口。位置
?我建议,如果您想更改浏览器地址栏中的URL,请查看URL重写,使用服务器(Apache?)上运行的任何内容。我们需要删除#及其前面的“/”。@mihai如果不刷新页面,这是不可能的。+1表示很棒,我以前从未遇到过=)我同意,HTML5提供了很棒的API:)@TobiasKrogh在不知道/4000/title-2的情况下可以这样做吗?我知道从window.location获取它可能有一个技巧,但我想知道是否可以直接使用一种“相对”路径(例如“/”)来实现