2013-07-21 7 views
0

Я пытаюсь сделать результат запроса ajax, используя before(). Он работает очень хорошо, но теперь я хотел бы показать результат с анимацией (переключение, скольжение или что-то еще).JQuery before() с анимацией

Вот код, я использую:

jQuery.ajax({ 
      type: "POST", 
      url: "/postcom", 
      dataType:"text", 
      data:myData, 
      success:function(response){ 
      $("#results_com").before(response); 
      $("#formcomtext").val(''); 
         }, 
      error:function (xhr, ajaxOptions, thrownError){ 
       console.log(thrownError); 
      } 
     }); 

HTML:

<div id="results_com></div> 

Благодаря

ответ

0

Если вы используете insertBefore, это может быть проще:

$(response).insertBefore("#results_com").animate({}, 400); 
+0

Не работает ... Он по-прежнему появляется в одном shot ... – Recif

+0

Попробуйте '.hide()' после вставки. Я просто дал вам способ сохранить цепочку, вместо того, чтобы пересечь новый дом. Кроме того, используйте CSS, чтобы скрыть любые «результаты», и использовать jquery для его анимации. – kalley

+0

Я пробовал $ (ответ) .insertBefore ("# results_com"). Hide(). Animate ({}, 400); но теперь он больше не работает (ничего не вставлено ajax) – Recif

0

Вы должен просто скрыть #results_com прежде, чем анимировать его Вот простой демо для него:. http://jsfiddle.net/pERgk/

+0

Не работает ... Он по-прежнему появляется в одном кадре ... – Recif

+0

Нет, это не так. Нажмите «запустить», когда вы находитесь на странице. Это происходит быстро. –

+0

Да, я знаю, я говорил о своей странице. Он не работает с $ ('# results_com'). Append (response) .fadeIn ('slow'); – Recif

0

работает Демонстрационный http://jsfiddle.net/cse_tushar/pERgk/2/

вы можете использовать toggle вместо slideDown

$('#results_com').click(function() { 
    $('#results_com').hide().before('This will be the result').slideDown('slow'); 
}); 
+0

Не работает ... Он по-прежнему появляется в одном кадре ... – Recif

+0

Какой код вы пытались? я тестировал работает –

+0

jQuery.ajax ({ типа: "POST", URL: "/ postcom", DATATYPE: "текст", данных: MyData, успех: функция (ответ) { $ ('# results_com '). hide(). before (response) .slideDown (' slow '); $ ("# formcom"). toggle (' slow '); $ ("# formcomtext"). val (' ') ; \t \t \t \t \t \t}, об ошибках: функция (XHR, ajaxOptions, thrownError) { console.log (thrownError); } }); – Recif

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