2016-08-17 3 views
2

Ich habe ein einfaches modales Popup-Fenster. Wenn Sie geschlossen sind, kehren Sie zum Anfang der Seite zurück. Ich möchte, dass es in der gleichen Scroll-Position bleibt. Ist das möglich, ich bin nicht gut mit Javascript. HierModales Fenster schließen - kehrt zum Anfang der Seite zurück

ist die Seite: http://pagedev.co.uk/hoppings/product/2-4m-beads

Hier ist mein javascript:

$(function(){ 

var appendthis = ("<div class='modal-overlay js-modal-close'></div>"); 

    $('a[data-modal-id]').click(function(e) { 
    e.preventDefault(); 
    $("body").append(appendthis); 
    $(".modal-overlay").fadeTo(1000, 1); 
    //$(".js-modalbox").fadeIn(500); 
    var modalBox = $(this).attr('data-modal-id'); 
    $('#'+modalBox).fadeIn($(this).data()); 
    }); 


$(".js-modal-close, .modal-overlay").click(function() { 
    $(".modal-box, .modal-overlay").fadeOut(500, function() { 
    $(".modal-overlay").remove(); 
    }); 
}); 

$(window).resize(function() { 
    $(".modal-box").css({ 
    top: ($(window).height() - $(".modal-box").outerHeight())/2, 
    left: ($(window).width() - $(".modal-box").outerWidth())/2 
    }); 
}); 

$(window).resize(); 

}); 

Antwort

2

Sie müssen die Standardaktion für die enge Verbindung verhindern, wie Sie auf dem offenen Link haben:

$(".js-modal-close, .modal-overlay").click(function(e) { 
    e.preventDefault(); 
    $(".modal-box, .modal-overlay").fadeOut(500, function() { 
    $(".modal-overlay").remove(); 
    }); 
}); 
0

Das passiert, weil Sie href='#'

0 verwenden

können Sie das in Javascript verhindern

$(".js-modal-close, .modal-overlay").click(function(e) { 
    e.preventDefault(); 
    $(".modal-box, .modal-overlay").fadeOut(500, function() { 
     $(".modal-overlay").remove(); 
    }); 
} 
Verwandte Themen