プログラムしたコードに問題があります。アイデアは、jQuery を使用してカスタムの「ライトボックス」を作成することです。サムネイルをクリックすると、コードは属性「data-first-img-url」、「data-second-img-url」、および「data-third-img-url」を持つ div を調べます-これらの属性には含まれていますポップアップ ギャラリーの背景画像となる URL。
しかし、私が抱えている問題は、ポップアップを閉じてクリックして再度開くと、画像が2回表示されることです。
これが私のjQueryです:
$('.gallery').click(function() {
$('#overlay').fadeIn().append('<div class="main_image"></div><div class="second_image"></div><div class="third_image"></div>');
$main_img_url = $(this).attr('data-first-img-url');
$second_img_url = $(this).attr('data-second-img-url');
$third_img_url = $(this).attr('data-third-img-url');
$('.main_image').css("background-image", "url('" + $main_img_url + "')");
$('.second_image').css("background-image", "url('" + $second_img_url + "')");
$('.third_image').css("background-image", "url('" + $third_img_url + "')");
});
$(".close_gallery").click(function() {
$('#overlay').fadeOut();
});
そしてJSfiddle(簡略化)はこちら:http://jsfiddle.net/9d9sz/3/
画像をクリックすると正常に動作しますが、ポップアップを閉じて再度開くと、2 回表示されます。