Fancybox无法加载内联内容。

3
为了方便起见,这是网站 - http://schnell.dreamhosters.com/folio/pixelread.php。随意查看源代码。
浏览器窗口顶部栏中间的按钮“调色板”应该在屏幕中央打开一个fancybox,该框应该加载带有id为'data'的元素内的数据,但它没有,并出现错误消息:“无法加载请求的内容。请稍后再试。”我直接从fancybox网站上使用了这个示例,并仔细检查了所有CSS、图像和JS文件是否放置正确并已加载。所以现在我迷失了方向,不知道如何做/修复这个问题。
PS - 我使用Google Chrome 6.0。我会看看IE8或Firefox是否出现此问题。
PPS - 找到了一个解决方案。我可以通过使用“content”属性强制将HTML内容放入fancybox。使用jQuery,我可以轻松地将任何内容塞入盒子中。感谢大家的帮助。

当我点击调色板时,会弹出一个带有“Lorem ipsum dolor sit amet, consectetur adipiscing elit.”文本的fancybox。如果我接着点击Megaman并再次尝试打开调色板,就会出现错误。只有当我点击Megaman时才会出现这个问题,你也是这样吗? - Jake N
浏览器及其版本可能是有序的,我无法在这里重现问题。 - Wrikken
啊,jakenoble提到的路由确实在这里产生了错误。 - Wrikken
对我来说问题是,弹出窗口的按钮根本没有得到应该显示在其中的内容。 我总是收到“无法加载请求的内容。 请稍后再试。” - Mathias Schnell
好吧,这很奇怪,但似乎fancybox决定正常工作了... - Mathias Schnell
@jakenoble 我现在也遇到了和你一样的错误。第一次加载正常,但是当我切换到其他人并尝试时,就会出现错误。 - Mathias Schnell
2个回答

2

我找到了解决方案。我可以使用“content”属性强制将进入fancybox的HTML内容。使用jQuery,我可以轻松地将任何东西填充到盒子里。感谢大家的帮助。


1

我认为问题在于fancybox没有将您的内容识别为内联内容(不确定原因,但可能与URL中的查询字符串有关,因为当不存在时它可以正常工作)。

我建议尝试在fancybox声明中添加明确的type:inline

$("a#inline").fancybox({'type':'inline'}); 

尝试过这个,但最终发生的是它会将“调色板”链接放在fancybox中,而不是我想要的那个div中。 - Mathias Schnell
这个不起作用。$('a.fancybox').fancybox({ type:'inline', closeBtn: false }); 这是我的代码,链接中的缩略图被放入内容中,所以基本上fancybox没有读取内联内容。这个库的文档非常令人困惑。 - cj5

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接