DIV Автопрокрутка не работает - PullRequest
       10

DIV Автопрокрутка не работает

0 голосов
/ 06 сентября 2011

У меня есть div, который автоматически прокручивается вниз.Но когда в одном сообщении чата используется много смайликов, автопрокрутка перестает работать правильно, она прокручивает 2 строки снизу.

Я пробовал использовать это ..

 $("#chatbox").animate({ scrollTop: newscrollHeight }, 'normal');

Но div автоматически загружается каждые 3 секунды, поэтому при каждой загрузке анимационный эффект будет отображаться.

Что можно использовать для обеспечения его работы?

Вот полная функция ...

setInterval(function loadLog(){     
        var oldscrollHeight = $("#chatbox").prop("scrollHeight") - 20;
        $.ajax({
            url: "log.php",
            cache: false,
            success: function(html){        
                $("#chatbox").html(html); //Insert chat log into the #chatbox div               
                var newscrollHeight = $("#chatbox").prop("scrollHeight") - 20; //Scroll height after the request  
                $("#chatbox").animate({ scrollTop: newscrollHeight }, 'normal'); //Autoscroll to bottom of div

            },
        });
    }, 3500);

1 Ответ

0 голосов
/ 18 сентября 2011
setInterval(function(){scroller()}, 3500);
function scroller(){
$("#chatbox").load("log.php");
$("#chatbox").each( function(){
var scrollHeight = Math.max(this.scrollHeight, this.clientHeight);
this.scrollTop = scrollHeight - this.clientHeight;
});
}
...