我正在研究 Wordpress 单页投资组合上的 ajax 加载功能。
其原理是,当您单击图库中的缩略图时,它会打开一个容器(#DrawerContainer)并将本文的ajax 内容提取到其中。在很多帮助下,我已经能够在单击缩略图时打开抽屉并加载帖子内容。
如果您想看到它工作,这是一个小提琴(ajax 不会加载,但它在本地工作)。http://jsfiddle.net/RF6df/24/
我现在正在处理的部分:我需要我的网站是可抓取的,并且网址是可共享的。如果我给http://mywebsite.com/#!project5
某人,我需要在他加载页面时打开 project5 内容。
我认为 hash-bang (#!) url 是完成这项工作的方法。使用下面的代码(在 jsfiddle 上评论),我可以更新 url 并添加点击缩略图的哈希值。
var pathname = $(this).find('a')[0].href.split('/'),
l = pathname.length;
pathname = pathname[l-1] || pathname[l-2];
window.location.hash = "#!" + pathname;
但是当我加载页面时,不会记住 ajax 状态。我认为这是因为我的 ajax 容器仅在单击事件时加载,但是当我在 php.ini 中添加持久性容器时没有任何变化。
有没有办法加载已经显示帖子内容的页面,或者在页面加载 hash-bang url 时打开#DrawerContainer?
请记住,我只是在学习 jquery 和 ajax。因此,如果您解释或评论一下您的工作,我将非常感激,我一定会同时学习... :)