0

私は現在これを持っています

$(document).ready(function(){

like = "like";
current_likes = parseInt(50);
    $("#add-love").click(function(){
        if(like = "like"){
            $("#my_like").removeClass('hidden-profile');
            current_likes++;
            $("#like_count").html(current_likes);
            like = "unlike";
            console.log(like);
        }else{
            $("#my_like").addClass('hidden-profile');
            current_likes--;
            $("#like_count").html(current_likes);
            like = "like";
        }
    });
});

しかし、いいねボタンをクリックすると、いいねカウンターと変数も更新されます(ログに記録して確認しました)しかし、2回目にクリックすると、ifステートメントの2番目の部分に分類されず、単に機能しますlike="like" まだですか?

4

1 に答える 1

4

=を比較するのではなく、割り当てています==

if(like = "like"){
// Should be
if(like == "like"){
//------^^^

キーワードを使用しなかったため、変数likeをスコープに宣言したことに注意してください。関数のみにスコープを設定する必要がある場合は、関数内で使用します。範囲内で使用する場合は、関数の外でキーワードを使用することをお勧めします。windowvarready()var like = 'like';ready()windowvarready()

// Declare at higher scope
var like;  
$(document).ready(function(){
  // And access in the function...
  like = "like";
  current_likes = parseInt(50);
  //etc...
  //etc...
});
于 2012-07-01T21:02:32.750 に答える