2017-02-02 4 views
2

Ich habe eine 1 auf 1 Unterstützung Chat mit Ajax gebaut, die funktioniert super. Ich habe bemerkt, dass wenn Ajax das div, höher als die div Höhe, das div nur expandiert expandiert .. Ich habe bemerkt, dass viele Leute mit dem gleichen Problem wurden empfohlen, Überlauf zu verwenden: auto für Scrollen, die ich versucht habe und nicht Naht, um überhaupt zu arbeiten .. könnte mir jemand in die richtige Richtung zeigen, um funktionierende Scrollbalken in div zu bekommen?scrollen div mit Ajax funktioniert nicht

Failing dies, meine einzige andere Wahl ist, iframes zu verwenden, die ich wirklich nicht mag.

<table width="100%" height="100%" border="0"><TR height="90%"><TD width="100%"> 

<div id="adminlog" height="100%" width="100%"></div> 
</TD></TR><TR><TD><textarea rows="4" name="input" id="input" cols="100" style="width: 80%; border:solid 1px orange; background-color: lightyellow;"> 
</textarea> 
<input type="button" value="send" id="send" class="btn btn-primary" onclick="return textSubmit();"></TD></TR></TABLE> 

<script> 
function textSubmit(str) { 
if (str != "refresh") { 
     var admin = "<?PHP echo $admin;?>"; 
     var session = "<?PHP echo $session;?>"; 
     var input = document.getElementById("input").value; 
     document.getElementById("input").value = ""; 
     var dataString = 'admin='+ admin + '&input=' + input + '&session=' + session; 
} 
else { 
     var session = "<?PHP echo $session;?>"; 
     var dataString = 'session=' + session; 
} 
     jQuery.ajax({ 
      url: "admin/chatsession.php", 
      data: dataString, 
      type: "POST", 
      success: function(data){ 
       $("#adminlog").html(data); 
      }, 
      error: function(){} 
     }); 
    return true; 

} 

    setInterval('textSubmit("refresh")', 5000); 
</script> 

Antwort

0

Verwendung JQuery

<table id="scroll"><!--code--></table> 
$(document).ready(function(){ 
// check if the scroll is down 
    var isScrolledDown = ($('#scroll')[0].scrollHeight - $('#scroll')[0].scrollTop <= $('#scroll')[0].offsetHeight); 
    // display the message 
    $('#scroll')[0].innerHTML += htmlMessage; 
    // scroll down the scrollbar 
    $('#scroll')[0].scrollTop = isScrolledDown ? $('#scroll')[0].scrollHeight : $('#scroll')[0].scrollTop;} 

Oder verwenden Ajax und php this book

+1

Hallo zu verstehen, begrüßen Überlauf zu stapeln. Während ein Link zu einer hilfreichen externen Ressource immer willkommen ist, bitte * zitieren Sie einen Schlüsselauszug * von der Seite, auf die Sie verlinken. Dies ist so, dass, wenn die Webseite ausfällt oder die Seite (wieder) verschoben wird, diese Antwort nicht nutzlos wird. –