整数の要素を持っています。単一要素のクリックで増減カウントを切り替えます。
<span class="likes-count"> 2 </span>
そして、クリックされたdivの値の増減を切り替える必要があります。 <div class="liked"></div>
問題: 私は値をインクリメントし.notliked
にクラスを変更し、別のonclick関数は値をデクリメント$('.liked').clicked
上の関数を呼び出していますが、それが正常に動作していません。 私のコードを確認してください。私はこれがこれを行う最善の方法ではないと思います。
私のデモコードです。あなたは、クリックイベントを委任する必要が
$(document).ready(function() {
$(".notliked").click(function() {
var $this = $(this);
$this.removeClass('notliked');
$this.addClass('liked')
$count = $('.likes-count');
$count.html((parseInt($count.html(),10) || 0) + 1);
});
$(".liked").click(function() {
var $this = $(this);
$this.removeClass('liked');
$this.addClass('notliked');
$count = $('.likes-count');
$count.html((parseInt($count.html(),10) || 0) - 1);
});
});
.heart {
color: #fff;
height:50px;
cursor:pointer;
width:50px;
background-color: red;
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/2.2.0/jquery.min.js"></script>
<span class="likes-count"> 2 </span>
<div class="liked heart">Click</div>
を使用する場合があります代わりに '.toggleClass()'を使います。 - http:// api。 jquery.com/toggleclass/ –
私はそれを試みました。私の問題ではうまくいかなかった。 – Saurabh