1

申し訳ありませんが、それはおそらく初歩的な質問になるでしょう) 迷惑なバグがあり、何が問題なのかわかりません:

私はグローバル変数を保持しています:var cur_id=0; テキストエリアをクリックすると、テキストエリアのID値を保存したいcur_id

$('textarea.line').click(function  () {
    cur_id = $(this).attr('id');
}); 

クラス要素cur_idではなくどこかをクリックした場合に備えて、ゼロに設定したいcontent-append

 $(document).on('click touchstart', function(event) { 
    var el = $(event.target);
    if (!el.hasClass('content-append')) {
        cur_id = 0;  
    };
});

また、クリックしたテキストエリアを削除するアクションもあります。

$('.main-remover').click(function () {
    if (cur_id==0) {alert('Click a textarea to remove it!');} 
            else {document.getElementById(cur_id).remove();
        cur_id = 0;}
});

textarea をクリックしてからドキュメント内の任意の場所をクリックすると、cur_id がゼロになります。それは問題ありませんが、テキストエリアをクリックしてからこのボタンをクリックすると:

<button type="button" class="content-append main-remover btn btn-default">Remove</button>

「テキストエリアをクリックして削除してください!」というメッセージが表示されます。cur_id==0このメッセージは、何も削除されない場合にのみ表示されます。私はどういうわけか私はこの部分で間違っていると思います:

$(document).on('click touchstart', function(event) { 
        var el = $(event.target);
        if (!el.hasClass('content-append')) {
            cur_id = 0;  
        };
    });

何が悪いのかを理解するのを手伝ってください!

4

0 に答える 0