我有一个网站,其中提交到无序列表的附加消息充当信使/聊天系统。我的问题,现在我的网站是活动的,是附加的消息不会出现在其他用户的屏幕上。这意味着您提交的消息仅在屏幕上是本地的。我需要的是,如果提交了一条消息,那么每个人都可以看到它。
现在我很确定这是因为我的消息不是由PHP支持的,所以它们没有被上传到服务器。他们住在当地。如何将这些消息上传到服务器?是Javascript吗?有人能够让这个工作吗?
我的HTML是:
<ul id="messagebox" ></ul>
<div>
<input type="text" id="typetextbox" maxlength="100" autocomplete="off" />
<button type="submit" id="submit" onblur="submit"> </button>
</div>
我的Javascript是:
$(document).ready(function(){
$('#typetextbox').keypress(function (e){
if(e.keyCode == 13 ) $('#submit').click();
});
$('#submit').click(function(){
var message = $('#typetextbox').val();
if (message.replace(/ /g, '')){
var positions = makeNewPosition();
var el = $('<li>'+message+'</li>');
el.attr('gridpos', positions[0].toString()+"x"+positions[1].toString())
el.css('left', positions[1] * window.li_width);
el.css('top', positions[0] * window.li_height);
el.fadeIn(200);
$('#messagebox').append(el);
}
});
});
如果有人对我的工作方式有所了解,我们将非常感激。
如果我不完全清楚,请告诉我!
答案 0 :(得分:0)
您需要一台服务器来管理每个客户端之间发送和接收的消息的状态。我建议对WebSockets进行一些研究。
我使用http://pusher.com/作为发布/订阅事件管理器,以便所有已知订阅者将接收发布到特定频道(即房间或主题)的消息。他们提供了几个例子,包括实时聊天演示。
另一个选项是http://socket.io/,它还有一个演示聊天应用程序和源代码。
如果您正在创建聊天应用程序,那么使用其中一个实时消息系统当然值得花时间。