2016-05-03 6 views
0

PHP/JS/JQueryでチャットを行いましたが、新しいメッセージが表示された後に自動スクロールします。javascriptの場合に自動スクロールする方法

$(function(){ 
$(document).on('submit','#chatForm',function(){ 
    var text = $.trim($("#text").val()); 
    var name = $.trim($("#name").val()); 

    if(text != "" && name != ""){ 
     $.post('poster.php',{text: text, name: name},function(data){ 
      $(".chatMessages").append(data); 
     }); 
    }else{ 
     alert("Data missing!"); 
    } 
}); 

function getMessages(){ 
    $.get('receive.php',function(data){ 
     $(".chatMessages").html(data); 
    }); 
} 

setInterval(function(){ 
    getMessages(); 
    document.getElementById('chatBottom').scrollIntoView(); 
},500); 
}); 

しかし、それは

+0

エラーが発生していますか? 'chatBottom'は' ID'として存在しますか? – Marcus

+0

存在しますが、動作しません。エラーはありません –

+0

どこに存在しますか? HTMLマークアップでページにハードコードされていますか? 'getMessages()'レスポンスでは?スコープのためにアクセスできない可能性があります。 – Marcus

答えて

0

使用jQueryのは、このように機能をアニメーションスクロールしない:ここに私のコード(ジャバスクリプト)があります$(".chatMessages).animate({scrollTop:$(this).scrollHeight},500);

+0

unfortunatellyを使わないでください –

+0

あなたはhtmlコードを共有したり、 –

0

あなたは以下のようなものを使用することができます -

function pageScroll() { 
     window.scrollBy(0,50); // horizontal and vertical scroll increments 
     scrolldelay = setTimeout('pageScroll()',100); // scrolls every 100 milliseconds 
} 

あなたはここではsetTimeout機能は必要ないかもしれませんが、毎回新しいメッセージを確認する必要があります。

関連する問題