2014-02-11 3 views
0

Что мне нужно - это способ отображения сообщений на странице из этого кода, в котором говорится, что они могут отправлять комментарии только каждые 30 секунд, но я не вижу никакого способа сделать это. скрытый обратный вызов или событие, на которое я могу подключиться?Событие Foundation.utils.debounce при срабатывании

 $body.on('keypress', '.commentForm textarea', Foundation.utils.debounce(function (event) { 
     var $wrapper = $(this).parentsUntil('.confession_comments_element').parent(); 
     var $self = $(this); 
     var $commentWrapper = $self.parent().parent().parent(); 

     if (event.which === 13) { 
      if ($commentWrapper.find('.confession_comment_wrapper').length) { 
       $self.parent().parent().ajaxSubmit({ 
        'success': function (data) { 
         $commentWrapper.find('.confession_comment_wrapper').append(data); 
         $self.val(''); 
        } 
       }); 
       return true; 
      } 
      $self.parent().parent().ajaxSubmit({ 
       'success': function (data) { 
        $commentWrapper.append(data); 
       } 
      }); 
      return false; 
     } 
    }, 30000, true)); 

ответ

1

Я думаю, что вы можете отключить кнопку POST после успешной отправки и запустить таймер в течение 30 секунд, который просто разрешает его снова. Что-то вроде:

 $self.parent().parent().ajaxSubmit({ 
     'success': function (data) { 
      $commentWrapper.append(data); 

      $('#your_post_button').addClass('disabled'); 
      setTimeout(function() { 
       $('#your_post_button').removeClass('disabled'); 
      }, 30000); 

     } 
    }); 
+0

На самом деле вы только что напомнили мне, что мой метод не будет работать, мой будет работать, только если пользователь остался на странице за 30 минут. Мне нужно обрабатывать эту серверную сторону. –

Смежные вопросы