Lightbox закрывается при нажатии на контент - PullRequest
2 голосов
/ 23 декабря 2011

У меня есть лайтбокс с jwplayer внутри, и у меня также есть ссылки вместе с ним, проблема в том, что когда я щелкаю одну из ссылок, она закрывает лайтбокс и никогда не переходит на ссылку, почти как если бы существовал событие Функция на световой короб, когда нет ... Любой, как это мой код, я ценю любую помощь, я могу получить, чтобы решить эту проблему.

Спасибо

jQuery.fn.center = function () {
    this.css("position","fixed");
    this.css("top", ( $(window).height() - this.outerHeight() ) / 2 + "px");
    this.css("left", ( $(window).width() - this.outerWidth() ) / 2 + "px");
    return this;
}

jQuery.jwbox = {
    lightbox    :   null,
    player  : null,
    toggle  : function(context) {
        if (!$.jwbox.lightbox) {
                $.jwbox.lightbox = $(".jwbox_hidden", context);
                $.jwbox.center();
                $("#jwbox_background").fadeIn("fast");
                $.jwbox.lightbox.css("display","block")
                $.jwbox.center();
                $("#jwbox_background").fadeTo(0, 0.8);
                $("object", context).each(function(){
                    $.jwbox.player = document.getElementById(this.id);
                });
        } else if ((context.className == 'jwbox_content')) {
        } else {
            try {
                $.jwbox.player.sendEvent("STOP");
                $.jwbox.player = null;
            } catch (err) {
            }
            $.jwbox.lightbox.css("display","none");
            $.jwbox.lightbox = null;
            $("#jwbox_background").fadeOut("fast");
        }
    },
    center  : function() {
        if ($.jwbox.lightbox) {
            $.jwbox.lightbox.center();
        }
    }
}

$(document).ready(function () {
    $("body").append('<div id="jwbox_background">&nbsp;</div>');
    $(".jwbox").click(function () {$.jwbox.toggle(this); return false;});
    $("#jwbox_background").click(function () {$.jwbox.toggle(this); return false;});
    $(window).resize(function() {$.jwbox.center();});
});

Ответы [ 2 ]

1 голос
/ 27 декабря 2011

Я столкнулся с подобной проблемой.Я решил это, переключившись на jQuery colorbox.См .: http://jacklmoore.com/colorbox/#setting-overlayclose

0 голосов
/ 12 января 2012

Решение:

Используйте файл jquery.lightbox-0.5 из пакета загрузки

Тогда в этом файле найдите

// Assigning click events in elements to close overlay
$('#jquery-overlay,#jquery-lightbox').click(function() {
    _finish();
}); 

и удали все это.

...