我已经与ajax建立了一对一的支持聊天,效果很好。我注意到当ajax刷新div,高于div高度时,div只是不断扩展..我注意到许多有同样问题的人被建议使用overflow:auto for scrolling我已经尝试过并且没有#39 ; t缝合工作...可能有人指出我正确的方向在div中工作滚动条??
如果做不到这一点,我唯一的另一个选择是使用我真的不喜欢的iframe。
<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>
答案 0 :(得分:0)
使用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;}
或者用来理解ajax和php this book