我创建了一个使用 AJAX 动态加载内容的网站,但是这在尝试加载 FancyBox 图像库时引起了问题。
如果您访问:http ://darynjohnson.com/Medical%20Futures/gallery.php - 画廊加载正常,如您所料。
但是,如果您先转到另一个页面,然后再返回画廊,它就不起作用了。 http://darynjohnson.com/Medical%20Futures/about.php#gallery.php
关于为什么会发生这种情况的任何想法?
我认为问题来自gallery.php
:
$(document).ready(function() {
$(".fancybox").fancybox();
});
这会在文档加载时触发,一旦从 about.php(或任何其他页面)加载页面,您可以尝试手动调用该函数。或者也许将其替换为:
$(function() {
$(".fancybox").fancybox();
});
编辑:你可以做类似的事情dynamicpage.js
:
之后$pageWrap.animate({ ... });
,添加$(".fancybox").fancybox();
。这将确保链接已准备好在单击时打开图库。可以使用更好的方法来调用为每个页面定义的函数,或者添加一个条件来检查if (newHash == 'gallery.php')
,例如。我希望我现在更清楚了。