Событие щелчка jQuery не работает на оверлее - PullRequest
0 голосов
/ 05 января 2012

http://lunapark.waapps.net/en/ перейдите в раздел «Новости» и нажмите на первое изображение.При щелчке по событию вызывается скрипт галереи с методом jQuery ajax.В дальнейшем при нажатии на событие должно быть открыто новое наложение на предыдущее наложение.Не открывается, но когда вы закрываете первый оверлей - так что оверлей News - он включается, и вы видите галерею.Эта проблема возникает только в браузере Safari.Как я могу это исправить?Любая идея, пожалуйста.Уже сейчас спасибо.

Этот скрипт выполняет наложение галереи

$('div.multiple_img a[href$="jpg"], div.single_img a[href$="png"]').click(function(){
    var post_id = $(this).parents().find(".post-content").next().val();
    $.get(URL+'/get_gallery.php?post_id='+post_id, function(data){
        var sw = $("#image_wrapper_2");
        sw.html(data);
        $("body").addClass("on2");
        $("#overlay2 #page_bg").css("background-color",ww.find(">div").attr("data-bgcolor"));

        if(!($.browser.msie && $.browser.version == '8.0') && !works.isApple()) 
            $("#overlay2").mCustomScrollbar("vertical",400,"easeOutCirc",1,"auto","yes","yes",15);

        works.scrollTo(400, $("#overlay2"), 0);
    });
    return false;

});

Этот скрипт запускает первое наложение

loadPage : function (url){
    $.ajax({
      url: url,
      success: function(data){
        var pw = $("#page_wrapper");
        pw.html(data);
        $("#page_bg").css("background-color",pw.find(">div").attr("data-bgcolor"));
        $("body").addClass("on");

        if(!($.browser.msie && $.browser.version == '8.0') && !works.isApple()) 
            $("#overlay").mCustomScrollbar("vertical",400,"easeOutCirc",1,"auto","yes","yes",15);

        $(".loader").removeClass("on");
        $("#main-nav a").removeClass("show_loader");
        works.scrollTo(400, $("#overlay"), 0);

первый скрипт выполняется в методе ajax объекта loadPage

1 Ответ

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

Я полагаю, эта проблема вызвана видимостью CSS.Когда я изменяю свои свойства CSS с

#overlay2{
    height:100%;
    position:fixed;
    width:100%;
    opacity:.94;
    z-index: 60;
    visibility:hidden;
    opacity:0;
    top:0;
    left:0;
    -webkit-transition:all .3s ease-in .1s;
    -moz-transition:all .3s ease-in .1s;
    -ms-transition:all .3s ease-in .1s;
    -o-transition:all .3s ease-in .1s;
    transition:all .3s ease-in .1s;
}

body.on2  #overlay2{
    visibility:visible !important;
    opacity:1;
}

на

display: none; for #overlay
display: block; for body.on2  #overlay2

, он работает для Safari, но в то же время галерея не работает с открытым вторым наложением.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...