我有一个ID为“ tempPictures”的div。我想销毁图库,然后在关闭后重新启动它,然后重新打开。第一次单击时,它工作正常,但是第二次,它在同一选项卡中打开图像,而不是在光图库中打开图像。 Any1遇到这样的问题?

function getReplyImages(id) {
    $formData = {
        "_token": $token,
        "inmate_reply_id": id
    }
    ajaxStartStop();
    $.ajax({
        url: $inmateReplyAttachmentsRoute,
        type: 'POST',
        data: $formData,
        success: function (data) {
            var html = '';
            Object.keys(data).forEach(function (key) {
                html += '<a href="' + data[key].file + '">';
                html += '<img src="' + data[key].thumnail + '" />';
                html += '</a>';
            });
            $('#tempPictures').html(html);
            if(!$galleryLoaded) {
                console.log('loaded');
                $('#tempPictures').lightGallery({thumbnail: true});
                $('#tempPictures > a:first > img').trigger('click');
            }
            $galleryLoaded = true;

        },
        error: function ($error) {
            notificationMsg($error, error);
        }
    });
}

$(function () {
    $("#tempPictures > a:first > img").click(function () {
        return false;
    });
});

$('#tempPictures').on('onCloseAfter.lg',function(event, index, fromTouch, fromThumb){
    $('#tempPictures').lightGallery({destroy: true});
    $('#tempPictures').html('');
    $galleryLoaded = false;
});

最佳答案

我知道了。我没有正确摧毁灯廊。必须这样做。

$('#tempPictures').data('lightGallery').destroy(true);

关于javascript - 销毁一间轻便的画廊,然后重新启动它,导致问题,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/48423817/

10-12 12:23