Javascript 使用ajax和window.location伪造url栏

Javascript 使用ajax和window.location伪造url栏,javascript,jquery,ajax,window.location,Javascript,Jquery,Ajax,Window.location,我使用.load发出ajax请求。它工作得很好。但是我的url栏有问题。我想更改url栏。例如当ajax加载关于/联系页面时。我想将url栏更改为about/contact 我用过这个 window.location.replace = about/contact; 但是现在,他直接转到这个页面。但我不希望页面重定向到该url。我怎样才能解决这个问题 谢谢 使用ajax历史插件,比如jquery地址 看看这个: 您可以使用历史API来实现这一点,尽管它在IE以外的浏览器中很好。例如,正在使用的

我使用.load发出ajax请求。它工作得很好。但是我的url栏有问题。我想更改url栏。例如当ajax加载关于/联系页面时。我想将url栏更改为about/contact

我用过这个

window.location.replace = about/contact;
但是现在,他直接转到这个页面。但我不希望页面重定向到该url。我怎样才能解决这个问题


谢谢

使用ajax历史插件,比如jquery地址

看看这个:

您可以使用历史API来实现这一点,尽管它在IE以外的浏览器中很好。例如,正在使用的历史API:。它将根据您的需要修改可见的URL,并允许您使用“上一步”按钮返回到以前的状态

建议您使用类似这样的方式,因为对于尚不支持历史API的浏览器,它的行为会相应地发生变化。它将首先使用历史API,如果没有历史API,则将使用该技术


如果您想自己做,那么一定要查看历史API及其工作原理,这里有一些地方可以开始:,

您不能这样做。但是,您可以向URL添加一个不重新加载页面的锚,例如
www.example.com#about
请参见以下答案:@w4rumy。CNTRL+F添加和修改历史记录entries@Ohgodwhy哦,我不知道。我强烈建议添加。它不需要API,在许多现代浏览器中都受支持。添加了好链接@Ohgodwhy。我建议使用history.js的主要原因是它在不支持任何功能的浏览器中充当了一种多边形填充