php 重新执行当前url,关于php:如何在不重新加载的情况下更改标题URL?

博客讨论了在Ajax驱动的网站中如何在用户导航时不重新加载页面,同时改变浏览器URL,以便于分享和书签功能。通过使用哈希(#)或者查询参数(?game=true)来更新URL,可以实现这一目标。文章提到了window.location.hash属性的使用,以及监听hashchange事件来响应URL变化。此外,还建议使用jQuery插件简化实现过程,并提供了重定向和清除哈希的方法。
摘要由CSDN通过智能技术生成

本问题已经有最佳答案,请猛点这里访问。

Possible Duplicate:

Modify the URL without reloading the page

Updating address bar with new URL without hash or reloading the page

我的站点完全基于Ajax请求,站点内的简单导航只从一个页面完成。这意味着当用户单击菜单项时,它不会加载另一个页面,而是加载HTML元素中的内容。但是当一个用户想要将一个页面链接到他们的朋友时,它总是一样的,因为无论Ajax拉了什么,http://mysite.com/mymainpage.php总是一样的。如何修改用户标题?例如,当他们单击"游戏"时,jquery/js/php/html是否可以更改浏览器上的当前URL地址栏?所以它变成了http://mysite.com/mymainpage.php?游戏=真。然后,用户只需从地址栏复制站点URL,它将引导到正确的部分,以便Ajax加载。

哈希答案正确。然而,实施它是……很难。看看jquery的一个不错的插件。

您可以使用哈希:

http://mysite.com/mymainpage.php

http://mysite.com/mymainpage.php游戏

(Gmail就是这样做的:https://mail.google.com/mail/收件箱,https://mail.google.com/mail/已发送)

您可以使用

window.location.hash /* gives"#games" */

window.location.hash.substring(1) /* gives"games" */

你可以用

window.location.hash="#games"

window.location.hash="games"

(似乎可行,但最好使用第一个选项)

然后,每次用户单击一个链接时,像现在这样更改散列并加载新页面。

当用户进入您的页面时,检查URL中是否有哈希值并加载该页面。

您还可以添加hashchange事件侦听器。请参阅https://developer.mozilla.org/en-us/docs/mozilla_event_reference/hashchange

编辑:

不,不能有两个哈希(http://mysite.com/mymainpage.php games fashion)

那么,如果用户访问http://mysite.com/mymainpage.php?games=true,你应该将他重定向到http://mysite.com/mymainpage.php games。

然后您可以将其更改为http://mysite.com/mymainpage.php fashion而不需要重新加载。

太好了,谢谢!有没有办法清除当前哈希?比如,如果原始页面已经有mysite.com/mymainpage.php?games=true执行此代码会使mysite.com/mymainpage.php games变得时尚

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值