javascript - 使用 ajax 和 window.location 伪造 url 栏

标签 javascript jquery ajax window.location

我使用 .load 发出 ajax 请求。它运行良好。但我的网址栏有问题。我想更改网址栏。例如。当ajax加载关于/联系页面时。我想将网址栏更改为 about/contact。

我用过这个。

window.location.replace = about/contact;

但是现在,他直接重定向到这个页面。但我不希望页面重定向到该网址。我该如何解决这个问题?

谢谢!

最佳答案

您可以使用 History API 来执行此操作,不过 support is not universal yet ,尽管在 IE 以外的浏览器中表现良好。有关使用中的示例:http://html5demos.com/history 。它将根据需要修改可见 URL,并且还允许您使用后退按钮返回到之前的状态。

建议您使用类似 history.js 的内容对此,因为它对于尚不支持历史 API 的浏览器会有相应的行为。它将首先使用 History API,如果不存在,将使用 hash技术。

如果您想自己动手,那么一定要查找 History API 及其工作原理,可以从以下一些地方开始:article 1 , article 2

关于javascript - 使用 ajax 和 window.location 伪造 url 栏,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12490020/

相关文章:

php - 如何延迟 PHP 函数在 jQuery Ajax 循环中触发?

javascript - 如何在 ExtJS 网格中显示更改值

javascript - 如何强制 Chrome 在下载 URL 时不打开另存为对话框?

php - 使用 jQuery Ajax 和 PHP 更新 SQL 数据库

带有一个 Sprite 的 Javascript 照片幻灯片

javascript - Google 自定义搜索 API 的客户端请求数量是否受到限制?

javascript - jQuery 宽度输入字段错误

javascript - 隐藏所有 div,除了单击的那个

javascript - 我如何编写 JQuery 函数来从内联样式 div 中获取背景图像并将其放入图像标签中?

php - 无法使用 AJAX 从 PHP 生成的 Bootstrap 选项卡中检索数据