我正在使用Fancybox 2.0.6和jQuery 1.7.2,当我使用以斜杠开头的href url时,我收到以下错误:
Syntax error, unrecognized expression: /path/to/load
如果我删除了斜线,它就可以了。显然,我得到了404,但fancybox打开了。
是的,我确实需要网址以斜线开头。
谢谢。
答案 0 :(得分:1)
我在使用Fancybox 2.0.5的jQuery 1.7.1中遇到了类似的问题。
不仅是开头的斜线, 也是一封信" a"斜线前的一个或多个点在我的测试中导致同样的问题。 似乎在键入其他字母或更多字母" a"工作正常。
我在" href"中使用绝对路径解决了这个问题。属性。 另一个解决方案,你可以尝试" href" Fancybox的选项。 (document)
我试过它,发现使用$(this).attr('href')
可以正常工作,
甚至路径也是相对的,以斜线开头。
我试过的代码:
$('.fancybox').fancybox({
href: $(this).attr('href')
});
2012年7月3日更新:
我发现上面尝试的代码并不总是有用,并且进行了一些演示here。 使用"类型"似乎没有错误。选项。
答案 1 :(得分:1)
您必须将此属性添加到您的链接:data-fancybox-type =“iframe”
答案 2 :(得分:0)
这是一个较旧的主题,但在Google上仍然较高。您可以查看Github上为Fancybox提交的错误:
https://github.com/fancyapps/fancyBox/issues/290
请注意!如果fancyBox将无法获取内容类型,则会显示错误消息 将显示(这与之前的版本不同 “ajax”用作默认类型。)
这意味着你需要指明请求的类型('ajax','iframe','inline'):
例如:
$('.fancybox').fancybox({
type: 'ajax'
});
或
$('.fancybox').fancybox({
type: $.support.ajax? 'ajax':'iframe'
});