我创建了一个私人聊天系统一切正常,但我有一个问题聊天框默认情况下是不可见的,所以一旦用户点击聊天名称,我正在使用jQuery来显示chatbo。jquery更新所有浏览器
我想要的是,如果我一个MSG发送给其他人就应该自动隐藏,显示更改聊天框状态,还是让我来告诉你我的代码
$('#send_now').live("keypress", function(e){
me = $(this);
if(e.which == 13)
{
getData();
}
});
function getData(){
var send_to = $(me).parent('#textareaPanel').children('#submit_send_to').val();
var sender = $(me).parent('#textareaPanel').children('#submit_sender').val();
var send_msg = $(me).val();
var flick = '<div class="singleMsg"><p id="msgTop"><span class="name"><img src="images/avatar.png" width="15" height="15" alt="avatar" /> '+ sender +' said ---</span><span class="time"></span></p><p id="msgData">' + send_msg + '</p></div>';
$('.' + sender).closest('#forclick').show();
if(window.XMLHttpRequest)
{
xmlhttp = new window.XMLHttpRequest();
}
else
{
xmlhttp = new ActiveXObject('Microsoft.XMLHTTP');
}
xmlhttp.onreadystatechange = function() {
if(xmlhttp.readyState == '4' && xmlhttp.status == '200')
{
response = xmlhttp.responseText;
$(me).closest('#allMsgs').children('#fake').append(flick);
$(me).val('');
}
}
var send_msg = $(me).val();
parameters = 'sender=' + sender + '&send_to=' + send_to + '&send_msg=' + send_msg;
xmlhttp.open('POST', 'scripts/chat-submit.php', true);
xmlhttp.setRequestHeader('Content-type', 'application/x-www-form-urlencoded');
xmlhttp.send(parameters);
}
我在做什么是一个人一旦点击输入它会发送数据到服务器使用Ajax,然后它会将该味精附加到发件人的屏幕现在的问题是,虽然聊天已发送,接收器不确定,因为他的聊天箱是隐藏的,所以他将不得不点击我的名字看到有没有聊天或没有。
感谢
我这样做是为了抓住不同功能的聊天记录,并且该功能正在为所有登录用户获取数据,因此在这种情况下,尽管我不向任何人发送聊天消息,但它会使所有聊天框可见。 – Henry