2017-03-29 19 views
0

私は、クリックによってトリガーされる機能を持っています。私はそれをクリックした後、クリックを無効にします。だから私はこれを作ったクリックを無効にして後でjQueryで有効にする方法

$('.item-blog').on('click', function(){ 

    $('.item-blog').off('click'); 

}); 

それは完全に動作しています。

しかし、すべてのイベントの最後に、最後の関数内で、すべてのものをリセットしてすべてのコードを実行したときに、最初の関数を再度クリックすることができるようにしたい再び同じ出来事を起こす。だから私はすべてをリセットする最後の関数の中に入れます。

$('.item-blog').on('click'); 

しかし、それはまったく機能しません。

私はさらにバインドとアンバインドを試みましたが、クリックを有効にするたびに機能しません。

いくつかお手伝いしますか?

ではなく、クラスを削除してください...そして一時的なものを追加する非常に

+1

'.off() 'メソッドは、光スイッチをオフにするという意味でハンドラをオフにしない、それは*引き出しの意味で*ハンドラを削除電球、および関連するすべての配線。 – nnnnnn

+0

http://stackoverflow.com/questions/2459153/alternative-to-jquerys-toggle-method-that-supports-eventdata – dippas

+0

ここでは、ハンドラを追加および削除するのではなく、フラグを使用する別の回答があります。http:///stackoverflow.com/questions/38906793/event-click-on-and-off – nnnnnn

答えて

0

、ありがとうございました。
;)

$(document).on('click','.item-blog', function(){ 
    $(this).removeClass("item-blog").addClass("item-blog-disabled"); 
}); 

次に、後で、あなただけのitem-blog-disabledクラスを使用してクラスを再度追加する必要があります。以下のような

$(document).find('.item-blog-disabled').removeClass("item-blog-disabled").addClass("item-blog"); 

はだから今、ハンドラは、それが持っている.item-blogのための代表団documentにバインドされます。

単純なクラスを使用して、これらの要素でハンドラを削除/追加する機会を与えます。

+0

私は知っている...私はちょうど編集しました。 –

+0

あなたは正しいです...今より良いですか? ;) –

0

次のようにonoffを試して、クリックを切り替えることができます。

$(document).ready(function(){ 
 

 
function toggleClick(on) { 
 

 
    if(on) { 
 
     $('.item-blog').on('click', function(){ 
 
     console.log('clicked'); 
 
     toggleClick(false); 
 

 
     }); 
 

 
    } else { 
 
     $('.item-blog').off('click'); 
 
    } 
 

 
} 
 

 
toggleClick(true); 
 

 
$('.item-blog-reset').on('click', function(){ 
 
    console.log('Reset done'); 
 
    toggleClick(true); 
 

 
}); 
 

 
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<input type="button" value="Click" class="item-blog" /> 
 
<input type="button" value="Reset" class="item-blog-reset" />

+0

'.bind'と' .unbind'はjQuery 3.0から廃止されました。だから長期的な解決策ではありません。 –

+0

ありがとう、 'on'と' off'で更新されました。 – Aruna

関連する問題