2017-10-22 6 views
0

私は、クリックすると別のボックスに移動し、その後、自分のhtmlにある削除ボタンでイメージを削除しようとしています。私はそれをクリックしたときにイメージを追加する方法を理解し、次に削除ボタンをクリックしてイメージを削除しました。 私が抱えている問題は、画像そのものをクリックすると右にコピーする必要がありますが、一度コピーしてからもう一度クリックする前にボタンを使用して画像を削除する必要がありますもう一度表示されます。今すぐクリックすると、画像が繰り返し表示されます。私は.stop()を使ってみましたが、それは関数を完全に停止します。どのようにjQueryを使ってこれを行うのですか?クローン()を一度だけ交換するようにする

のjQuery CODE:

$(document).ready(function(){ 
$("#john").click(function(){ 



var johnImage = $("#john").clone(false); 

$("h2").html("John is in the box"); 
$("h2").css({ 'color': 'red'}); 


$("#johnbox").prepend(johnImage); 




}); 
+0

クローンされているかどうかを保持する変数を保存しないのはなぜですか? – Volem

+0

どういう意味ですか? – TRS7

+0

グローバルブール変数を配置することができます。デフォルトはfalseで、クリックするとtrueを設定します。クローンを行うよりもBooleanがfalseの場合はクリックしてください。他の人は賢明ではありません。削除後に偽に設定する – Volem

答えて

0

以下のコードをチェックしてください。削除ハンドラで再度falseに設定する必要があります。

ここでは、削除コードを取得した後の完全なコードです。

$(document).ready(function() { 
    var clicked = false; 
    $("#john").click(function() { 
     if (!clicked) { 
      var johnImage = $("#john").clone(false); 
      $("h2").html("John is in the box"); 
      $("h2").css({ 'color': 'red' }); 
      $("#johnbox").prepend(johnImage); 
      clicked = true; 
     } 
    }); 
    $("#removejohn").click(function() { 
     clicked = false; 
     $("#john").remove(); 
     $("h2").html("Click John to put him in the Box"); 
     $("h2").css({ 'color': 'black' }); 
    }); 
}); 
+0

これはうまくいきましたが、画像をもう一度クリックすると再び表示されません。互換性はありません。 – TRS7

+0

イメージをどのように削除しましたか?削除ボタンをクリックすると – Volem

+0

#removejohn idは、HTMLのtype = "button"にアタッチされています。 – TRS7

関連する問題