2017-06-28 2 views
0

ユーザーボタンがクリックされたときに、ページ全体の背景色を緑色に変更するためのクリックイベントを設定しましたが、クリックすると何も起こりません。私はjQueryにとって非常に新しいので、私は明らかな誤りを犯していると確信しています。私のクリックイベントがうまくいかない理由がわかりませんか?

$(document).ready(function() { 
    var $body = $('body') 
    /*$body.html('');*/ 

    // var currentView = "Twittler Feed" 
    var currentView = $('<p>Twittler Feed</p>'); 
    var refreshTweet = function() { 
     var index = streams.home.length - 1; 
     var endInd = index - 10; 
     while (index >= endInd) { 
      var tweet = streams.home[index]; 
      var $tweet = $('<div class="tweets"><p class="posted-by"><button class="user">@' + 
       tweet.user + '</button><p class="message">' + tweet.message + 
       '</p><p class="time">' + /*$.timeago(tweet.created_at)*/ tweet.created_at + '</p></div>'); 
      currentView.appendTo('#sidebar') 
      $tweet.appendTo($body); 
      index -= 1; 
     } 
    } 

    refreshTweet(); 

    $('.refresh').on('click', function() { 
     if (document.getElementsByClassName('tweets')) { 
      $('.tweets').remove(); 
     } 
     var result = refreshTweet(); 
     $body.prepend(result); 
    }) 

    $('.user').on('click', 'button', function() { 
     currentView = this.user 
     $('body').css('background-color', 'green'); 

    }); 
}); 
+0

変更 '$( '文書')のクリックイベント

$(document).on('click', '.user', function() { currentView = this.user; $('body').css('background-color', 'green'); }); 

リファレンスを登録するためのクラスの使用.userですので。CSS( '背景色' –

答えて

0

IDまたはCLASSを使用してイベントを定義または登録する場合は、対応する演算子#およびを使用する必要があります。

ユーザーは、()jqueryの上http://api.jquery.com/on/

+0

更新ありがとうございます! "私は提案された変更を加えましたが、残念ながらボタンはまだ動作していません。 –

+0

@RyanAttick今アップデートdcodeを試してください。コンソールにエラーが表示されているかどうかを確認してください。 – praveen

0

あなたは、クラス「利用者」にクリックイベントを割り当てたい場合は、(ドットなしではなく、ユーザー).userを使用する必要があります。

$('.user').on('click', 'button', function() { 
    currentView = this.user 
    $('body').css('background-color', 'green'); 

    }); 
+1

@MichaelCoker ..回答ボディに.. – scaisEdge

関連する問題