私はこのコードペンを持っています -
http://codepen.io/sturobson/pen/3f1cd0077301489290d9e5a6e40077b7
画像を選択してテキストを書き、「プレビュー」をクリックすると、画像とテキストが表示されたライトボックスが表示されます。
私の問題は、ユーザーがライトボックスを閉じて別の画像を選択すると、両方の画像が表示されることです。ライトボックスを閉じるときにテキスト/画像を削除したくありません(これが最も簡単なオプションです)。
また、選択ボタンを数回クリックすると、「壊れて」青色の背景に select という単語が表示されることに気付きました。それを修正する方法がわからない。
どんな助けでも本当に感謝しています。
前もって感謝します。
編集、コードの追加 (最初からこれを行わなかったことをお詫びします)...
選択した画像にクラスを追加するコード。これにより、「select」という単語に青色の背景が与えられ、画像が別の div に複製されます。
$('.selectable-image').on("click", function() {
$('.selectable-image.selected').removeClass('selected');
$(this).addClass('selected');
$(".previewimage img").remove();
$(".selected > img").first().clone().appendTo(".preview-image");
return false;
});
このコードは、クリックに応じて選択または選択する単語を変更します
$('.selectable-image').on("click", function() {
$('.select-photo', this).text(function(_, oldText) {
return oldText === 'SELECTED' ? 'SELECT' : 'SELECTED';
}).parent().siblings().find('.select-photo').text(function(){
return $(this).data('text');
})
return false;
});
これら 2 つを使用して、同じ要素を 2 回クリックした場合に「選択した」クラスを削除する方法を理解する必要があります。また、ある画像をクリックしてから別の画像をクリックすると、追加された画像を交換し、最初の画像を削除して新しい選択に置き換えたいと思います。
日曜日の朝にそれが理にかなっていることを願っています。