繁体   English   中英

jQuery Ajax聊天重新加载

[英]jQuery ajax chat reload

我正在为我的网站开发一个简单的网络聊天应用程序。 但是,对我而言,使用间隔并每秒请求与ajax聊天感觉不对吗?

我今天要做的是

<script>

    $(function() {

        $('#chat_form').submit(function() {
            $.post('chat/post', $('#chat_form').serialize(), function(data){
                var message = $("#message").val();
                $("#message").val('');
                $("#chat_main").append('<li><b>Bruker: <?php echo " ".$this->session->userdata("chat_username") ?></b>: ' + message + '<br/></li>');
            });
            return false;
        });

        function loadchat()
        {
            $('#chat_main').load('chat/load');
        }

        setInterval(loadchat, 500);
        loadchat();

});

</script> 

还有其他更好的方法吗?

您可以使用服务器端事件 ,该事件应允许相同的内容,但在数据发生更改时将其发送到浏览器,这样用户就不会不断请求查看是否进行了更改。

这是关于聊天应用程序和使用jQuery实现彗星的最佳方法的非常酷的文章。

它对我有用。

使其完美无缺,因为它可以在时间戳上工作,因此几乎不需要骇客,因此当您更改机器日期时,它无法执行,但在服务器上可以正常工作。

使用xml替换文本文件实现是一种很好的做法。

我写了这两次。 从数据库进行轮询的Ajax聊天实际上并不是实时聊天。 您是对的,使用时间间隔来轮询数据糟透了。 无论如何,这是解决方案(一个也是唯一的实际解决方案)。

您需要阅读这本书 如果您没有jabber服务器,我将为您提供访问权限(用户注册更新等)。 阅读本书,然后与我联系。 是XMPP + Strophe库聊天(谷歌和Facebook使用的是)! 因此,最好重新开始学习新知识!

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM