magnificpopup / lightbox只发射一次

时间:2016-11-10 15:03:56

标签: javascript jquery magnific-popup

我已经在stackOverflow上阅读了一些类似的东西,但我真的没有到达任何地方。我们使用magnificpopup和lightbox来显示游览细节和照片。它在第一次点击时工作正常,但除非刷新页面,否则无法再次触发。显然,这不行!这是代码/电话。有人可以帮忙吗?

点击的代码: blah,blah Excursion Name

以下是JS设置:

var lb_settings = {
    type: 'inline',
    fixedBgPos: true,
    closeBtnInside: true,
    preloader: false,
    removalDelay: 300,
    mainClass: 'my-mfp-zoom-in',
    callbacks: {
        close: function() {
            // need to stop cycle when its no longer in the DOM
            var $lb = $(".cc_lightbox_slideshow");
            if ($lb.length) {   
                $lb.cycle('destroy');
            }
        }
    }
};

最后是实际的点击功能:

$("code").click(function () {
    var href = "/trips/getOptionDetails/acct_id/" +$(this).attr("class") + "/year/" + programYear + "/program/" + program;
    lb_settings.items = {};
    lb_settings.items.src = href;
    lb_settings.items.type = 'ajax';
    $.magnificPopup.open(lb_settings);
});

我非常感谢你的帮助。我很茫然。

1 个答案:

答案 0 :(得分:0)

这样我就更容易了。我发现以前的开发人员对过度复杂的事情有一个真正的诀窍。

我将ajax调用改为:

$( 'magPopUp')。magnificPopup({   类型:'ajax' });

然后我只使用了一个简单的html href:

a href =“linkWithUrlParameters”class =“magPopUp”>链接文字

最后,我切换灯箱设置并调用直接从被调用的文件运行。瞧!

谢谢大家。