我创建了3个页面——mainpage.php
, post.php
, display.php
。
主页有一个div id为"chatbox"的主聊天界面,以及一个带有提交按钮的文本区。点击提交按钮,使用jQuery调用post.php
&将用户的消息输入数据库。这没有什么麻烦。
display.php
并将返回的内容放入chatboxdiv中。function loadLog(){
if(counter>1)
delaytime=2500;
counter++;
var oldscrollHeight = $("#chatbox").attr("scrollHeight") - 20;
var id=$("#ID").val();
var _url='display.php?Id='+id;
$.ajax({
url:_url,
cache: false,
success: function(html){
$("#chatbox").html(html); //Insert chat from DB into the #chatbox div
var newscrollHeight = $("#chatbox").attr("scrollHeight") - 20;
if(newscrollHeight > oldscrollHeight){
$("#chatbox").animate({ scrollTop: newscrollHeight }, 'normal');
}
},
});
}
注意:这个函数每隔2500毫秒调用一次-
setInterval (loadLog, delaytime);
这个也可以。
现在,在display.php
中,我使用
echo PIPHP_ReplaceSmileys($chatdisp['Msg'], 'smileys/');
在聊天中显示笑脸符号。代码如下:http://pluginphp.com/plug-in59.php
我的问题:因为我们每2500毫秒刷新一次display.php
,表情符号每次显示时都会闪烁。这不会发生在文本上,因为文本是快速的,而图像需要时间来加载。这并不理想。有办法防止这种眨眼吗?
尝试将微笑作为背景。1 .大档案里装着所有的情绪。它将被加载一次,之后你可以很容易地在块上用类定义设置smile。示例:<div class="emotion lol"></div>