nop*_*ole 4 ajax fragment-identifier hashchange browser-state hashbang
Facebook正在使用Ajax历史记录(后退和前进按钮)和书签#!而不是仅使用#URL.这样做总是一个好主意,因为我认为通常的锚可能会干扰Ajax历史机制以触发它处理普通锚.
因此,Ajax History函数仅在它看到#!而不是仅仅处理散列部分时才会处理散列部分#.
并使用!与主流浏览器兼容?如果Facebook正在使用!,猜测它可能得到相当好的支持.
更新:这个答案已经通过这个superseeded 文章.它讨论了Hashbang(#!),Hashes(#)和HTML5 History API(pushState,popState)和解决方案的问题.
关于您网站的可用性,无关紧要,您可以使用您喜欢的任何内容.
关于搜索引擎优化,拥有它并且没有它都提供了不同的途径.
例如,Facebook使用!根据Google Proposal for Ajax Applications Crawlable.添加!会告诉谷歌它应该收听该ajax请求并将该url添加到搜索引擎结果中.这对于已经实现了ajax的网站来说非常棒,因为您需要做的就是添加!
这样做的缺点是它只能解决使你的ajax可抓取的问题.它没有解决以下问题:
对于目前没有使用ajax的网站,由于上述问题,最好不要使用Google Proposal,因为它只适用于像facebook这样疯狂的网站并需要绝望的搜索引擎优化解决方案.有一些替代方案可以解决更多这些问题(现在可以使用HTML5 PopState解决所有问题).其中一个替代方案是jQuery Ajaxy(如balupton.com上所见),它只需将您的网站升级为ajax应用程序,同时保持Ajax-enabled的丰富和交互体验,并继续为Ajax-Disabled用户完美地工作.
| 归档时间: |
|
| 查看次数: |
837 次 |
| 最近记录: |