Javascript jQuery类选择器单击()不工作

Javascript jQuery类选择器单击()不工作,javascript,jquery,html,Javascript,Jquery,Html,我试图使用类选择器(“.user”)按钮来运行另一个函数。但是,单击该按钮时不会运行任何函数。下面是我正在处理的代码,最下面是class按钮。我就是不明白为什么它不起作用。我知道我的GetNewWeets函数可以工作,我还有一个按钮可以正常运行,但是类选择器不能工作。谁能告诉我为什么 $(document).ready(function(){ var $body = $('body'); var $timeline = $('<div class="timeline"&

我试图使用类选择器(“.user”)按钮来运行另一个函数。但是,单击该按钮时不会运行任何函数。下面是我正在处理的代码,最下面是class按钮。我就是不明白为什么它不起作用。我知道我的GetNewWeets函数可以工作,我还有一个按钮可以正常运行,但是类选择器不能工作。谁能告诉我为什么

  $(document).ready(function(){
    var $body = $('body');
    var $timeline = $('<div class="timeline"></div>');
    var $btn = $('<input/>').attr({type:'button',name:'getNewTweets',value:'Get New Tweets'})

    $body.html('');
    $timeline.html('');
    $btn.appendTo($body);
    $timeline.appendTo($body);

    var currentIndex = 0; //Current index of tweets shown

    function getNewTweets() {

      var index = streams.home.length - 1 - currentIndex;

      while(index >= 0) {
          var tweet = streams.home[index];
          var $tweet = $('<div class="tweet"></div>');
          var $time = $('<div class="time"></div>');
          var $message = $('<div class="message"></div>')
          var $user = $('<button class=user></button>');
          $time.text(tweet.created_at);
          $user.text('@' + tweet.user);
          $message.text('tweetled: ' + tweet.message);
          $tweet.append($user);
          $message.appendTo($tweet);
          $time.appendTo($tweet);
          $tweet.appendTo($timeline);
          index -= 1;
          currentIndex += 1;
      }
    };

    $btn.click(getNewTweets);

    $(".user").click(getNewTweets);
$(文档).ready(函数(){
变量$body=$('body');
变量$timeline=$('');
var$btn=$('').attr({类型:'button',名称:'getNewTweets',值:'getNewTweets'})
$body.html(“”);
$timeline.html(“”);
$btn.附录($body);
$timeline.appendTo($body);
var currentIndex=0;//显示的推文的当前索引
函数getnewweets(){
var指数=streams.home.length-1-currentIndex;
而(索引>=0){
var tweet=streams.home[index];
var$tweet=$('');
变量$time=$('');
变量$message=$('')
变量$user=$('');
$time.text(tweet.created_at);
$user.text('@'+tweet.user);
$message.text('tweeted:'+tweet.message);
$tweet.append($user);
$message.appendTo($tweet);
$time.appendTo($tweet);
$tweet.appendTo($timeline);
指数-=1;
currentIndex+=1;
}
};
$btn.单击(GetNewWeets);
$(“.user”)。单击(GetNewWeets);

带有
user
类的按钮会动态添加到DOM中,因此当
$(“.user”).click(getnewweets);
执行时,
.user
可能不可用,这会导致未附加click事件侦听器。解决方案是将事件侦听器附加到文档上,而不是
$(文档)。on('click','user',getnewweets);