【问题标题】:Ajax page navigation '#' symbolAjax 页面导航 '#' 符号
【发布时间】:2012-05-03 21:55:35
【问题描述】:

我关注了google的

 https://mail.google.com/mail/?shva=1#inbox

尤其是#inbox

这个网址可以加书签,怎么实现的?

【问题讨论】:

标签: javascript ajax navigation


【解决方案1】:

因为它是由 Javascript 通过 Ajax 调用处理的,所以会考虑查询字符串中的内容。

在Javascript中定位所有#标签的一个例子是:

urlquery=location.href.split("#");

因此,当第一次加载包含此类链接的页面时,页面上的链接会生成包含 # 个锚点,单击这些锚点会更改位置地址,但不会导致页面重新加载,因为它是锚点到当前页面。然后 javascript 挂钩到 click 事件完成通过 Ajax 加载真实内容的真正工作。

但是,由于地址栏上的地址已更改,您可以将其存储在书签中。加载该书签时,它会使用 javascript 加载准系统 Web,以再次检测带有 # 的地址上的哪些标签,然后通过 Ajax 加载真实内容。

这就是为什么,例如,谷歌浏览器上 Twitter 页面的缩略图总是显示一个没有消息的界面,因为当那个缩略图生成时,Ajax 仍然没有加载内容。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多