Как заменить текст внутри поля jgrowl плавно?
Я устанавливаю текст в окне сообщения jgrowl. Вот пример:
function findID(whichID, command){
if($(whichID).length)
{
var url='<script>\n\
$("'+whichID+'").fadeOut().load("include/common.php?q='+command+'&p='+username+'", function(response, status, xhr) { $(this).fadeIn(); });<\/script>';
$(whichID).fadeOut().html(url).fadeIn();
}
}
var myID0="myID0";
var data='<div id="'+myID0+'" class="arm-info"></div>';
$('#rightcolumn').jGrowl(data, {sticky:true });
mytimerID0=window.setInterval(findID, 3000, '#'+myID0, "show_queue");
Это работает, но замена действительно вяло.
Как сделать плавный переход между двумя вызовами нагрузки?
Спасибо, Арман.
1 ответ
Решение
Возможно, замените HTML после завершения fadout, затем снова fadeIn.
$(whichID).fadeOut(function(){ $(this).html(url).fadeIn(); });
если вы делаете
$(whichID).fadeOut().html(url).fadeIn();
он заменит html одновременно с тем, как начинает исчезать.
редактировать:
ты не мог просто написать в функции findID? Я не думаю, что вам нужен тег script:
$.ajax( url:'include/common.php?q='+command+'&p='+username,
success: function(data){
$(this).fadeOut(function(){ $(this).html(data).fadeIn(); });
}
);