jQuery Fancybox 2.0.5语法错误

时间:2012-03-19 13:49:10

标签: javascript jquery fancybox

我正在尝试将Fancybox v2.0.5实现到我的页面中。在此之前,我使用1.3.4没有问题。

问题是,当在一个元素上调用.fancybox()时,每当我点击页面上的任何地方时,我都会收到此错误

Uncaught Error: Syntax error, unrecognized expression: )

我已经能够证明它与我将某些元素包装在锚点中这一事实有关,并将其称为:

var $a = $("<img/>", {src:"path_to_img", alt:"YT afbeelding"})
                .wrap('<a href="#yt_editor" class="yt_vid" rel="'+video_id+'" />')
                .parent()
                .fancybox();

任何人都知道如何解决这个问题?

1 个答案:

答案 0 :(得分:0)

我个人认为这是插件中的一个错误。问题在于您设置初始化调用的方式。我认为这应该有效:

$('.yt_img').wrap("<a href='#' class='yt_img_wrapper'/>");
$('.yt_img_wrapper').fancybox();

问题是该插件希望能够使用“selector”内部jQuery值作为一种方法来获取调用该插件的元素,并且(在我看来)这只是一个穷人设计决定。在您的情况下,选择器是“.yt_img.parent()”,是有效的选择器;这就是触发语法错误异常的原因。

编辑 - 它已在Fancybox的GitHub错误列表中记录为issue #173