在使用PHP和jQuery ajax方法实现的聊天室中,如何放置表情符号/笑脸?



我创建了3个页面——mainpage.php, post.php, display.php
主页有一个div id为"chatbox"的主聊天界面,以及一个带有提交按钮的文本区。点击提交按钮,使用jQuery调用post.php &将用户的消息输入数据库。这没有什么麻烦。

然后我使用jQuery ajax方法(见下文)调用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>

最新更新