Magic Popup动态图库条件

MagicPopup dynamic Gallery conditionnal

我的问题听起来很容易解决,但我被卡住了...

我正在使用 jQueryMagnific 弹出窗口来创建动态图库。

但并非所有画廊都有六张图片,有些可能只有一张或只有四张或五张。

所以这就是我所做的,但由于某些原因它不起作用...如果有人可以帮助我...我会非常高兴

var magic1;
var magic2;
var magic3;
var magic4;
var magic5;
var magic6;

if (post.photo1 != "") {
    var magic1 = '{ src: "http://linkto/img/'+post.photo1+'}'
} else {
    var magic1 = ""
}

if (post.photo2 != "") {
    var magic2 = '{ src: "http://linkto/img/'+post.photo2+'}'
} else {
    var magic2 = ""
}

if (post.photo3 != "") {
    var magic3 = '{ src: "http://linkto/img/'+post.photo3+'}'
} else {
    var magic3 = ""
}

if(post.photo4 != ""){
var magic4 ='{ src: "http://linkto/img/'+post.photo4+'}'
} else {
    var magic4 = ""
}

if (post.photo5 != "") {
    var magic5 = '{ src: "http://linkto/img/'+post.photo5+'}'
} else {
    var magic5 = ""
}

if (post.photo6 != "") {
    var magic6 = '{ src: "http://linkto/img/'+post.photo6+'}'
} else {
    var magic6 = ""
}

$('#fading-slider' + post.ID).magnificPopup({
    items: [
        magic1 + ',' +
        magic2 + ',' +
        magic3 + ',' +
        magic4 + ',' +
        magic5 + ',' +
        magic6
    ],
    gallery: {
      enabled: true
    },
    type: 'image' // this is default type
});

首先,你声明了两次 var,你可以尝试这样的事情:

 var imgs = new Array();
 if(post.photo1 != "")
   imgs.push({'src': 'http://linkto/img/'+post.photo1});
 if(post.photo2 != "")
   imgs.push({'src': 'http://linkto/img/'+post.photo2});

  ....
  ....
  $('#fading-slider' + post.ID).magnificPopup({
    items: imgs ,
    gallery: {
      enabled: true
    },
    type: 'image' // this is default type
  });