Javascript 将图像对象数组传递给Fancybox(lightbox)不会';好像不行?

Javascript 将图像对象数组传递给Fancybox(lightbox)不会';好像不行?,javascript,jquery,jquery-plugins,fancybox,Javascript,Jquery,Jquery Plugins,Fancybox,我试图在一个灯箱中显示一系列图像。不幸的是,只有第一张图片出现。据我所知,我应该能够将一组对象传递给fancybox,并让它将它们全部打开 我的代码如下(请注意,我即兴翻译了coffeescript,因此可能会有一些错误) 当我记录图像数组时,它看起来像是一个完全正常的对象数组。在浏览器中导航到每个图像的url会完美地显示图像,从而证明url是有效的 $(function(){ $('.lightbox').click(function(event){ event.preventDe

我试图在一个灯箱中显示一系列图像。不幸的是,只有第一张图片出现。据我所知,我应该能够将一组对象传递给fancybox,并让它将它们全部打开

我的代码如下(请注意,我即兴翻译了coffeescript,因此可能会有一些错误)

当我记录
图像
数组时,它看起来像是一个完全正常的对象数组。在浏览器中导航到每个图像的url会完美地显示图像,从而证明url是有效的

$(function(){
  $('.lightbox').click(function(event){
    event.preventDefault();
    // need to be able to get the link target
    $link = $(event.target).closest('a');

    $.getJSON($link.attr('href'), function(cake){
      // map the json to an array that fancybox can use
      images = $(cake.images).map(function(key, image)){
        return({ href: image.url });
      });

      console.log(images);
      // => [{href: 'image1.jpg'},{href: 'image2.jpg'},{href: 'image3.jpg'}]

      // show the lightbox
      $.fancybox.open(images);
    });
  });
});
HTML(混合了一些ruby):


有什么想法吗?

正确的语法应该是:

$.fancybox([ 
 {href : 'img1.jpg', title : 'Title'}, 
 {href : 'img2.jpg', title : 'Title'},
 {href : 'img3.jpg', title : 'Title'}  
 ],[
 {
 // API options here
 }
]);
因此,我想构造函数应该返回每个数组元素,后跟逗号,最后一个除外:

{ href: image.url },
那么我想你应该这样称呼fancybox:

$.fancybox.open([images]);
我打开并被告知更新到(比当前通过FancyBox网站上的下载链接提供的版本更新)。我一做那件事,问题就解决了

{ href: image.url },
$.fancybox.open([images]);