私はこのHTMLを持っています。
<a href="#" class="button redB" style="margin: 4px 4px 4px -4px;" id="estEditItemToggleMode" data-mode="edit">
<img src="images/icons/light/check.png" alt="" class="icon">
<span>Enable Editing Mode</span>
</a>
class
クリックすると、属性の値を切り替え続けたいので、次のdata-mode
ようになります。
if(mode == "edit") {
class = "button blueB";
data-mode = "select";
}
else if(mode == "select") {
class = "button redB";
data-mode = "edit";
}
これを使ってみました。
$('#estEditItemToggleMode').live('click', function(e){
e.preventDefault();
if($(this).data('mode') == "edit") {
$(this).removeClass('redB').addClass('blueB');
$(this).attr('data-mode', 'select');
}
else if($(this).data('mode') == "select") {
$(this).removeClass('blueB').addClass('redB');
$(this).attr('data-mode', 'edit');
}
});
これにより、値が1回だけ切り替えられます。したがって、2回以上のクリックには影響しません。これを正しく行う方法。