Hier ist der HTML-Teil, in dem das Chat-Feld, der Chat-Textbereich und die Chat-Mitglieder vorhanden sind.
Was ich versuche, ist, dass es auf der linken Seite eine Liste mit Chat-Mitgliedern gibt. Wenn ich auf den Namen eines Chat-Mitglieds klicke, öffnet sich der Chat zu dieser Person. Das heißt, es handelt sich um einen Eins-zu-Eins-Chat zwischen dem angemeldeten Benutzer und einem der Chat-Mitglieder. Chat-Mitglieder sind im Grunde die Feinde des angemeldeten Benutzers.
Code: Select all
anurag
golu
akash
Jetzt lautet mein Ajax- und JQuery-Code für das Chat-Feld wie folgt:
Code: Select all
$(document).ready(function()
{
$('.chat_members_list').click(function()
{
var chatmember = $(this).attr('id');
var iusername = ""; //the current logged in user
//alert(chatmember);
$(".chat_members_list").css("color","white");
$("#" + chatmember).css("color","lightskyblue");
load_data = {'fetch':1, 'username1':iusername, 'receivername1':chatmember};
$("#chat_box").html("
[img]images/loader3.gif[/img]
loading...");
window.setInterval(function()
{
$.post('shout.php', load_data, function(data)
{
$('#chat_box').html(data);
var scrolltoh = $('#chat_box')[0].scrollHeight;
$('#chat_box').scrollTop(scrolltoh);
});
}, 1000);
//method to trigger when user hits enter key
$("#input_ur_chat").keyup(function(evt)
{
if(evt.keyCode == 13)
{
var imessage = $('#input_ur_chat').val();
alert(iusername);
alert(imessage);
alert(chatmember);
post_data = {'username':iusername, 'message':imessage, 'receivername':chatmember};
//send data to "shout.php" using jQuery $.post()
$.post('shout.php', post_data, function(data)
{
//append data into messagebox with jQuery fade effect!
$(data).hide().appendTo('#chat_box').fadeIn();
//keep scrolled to bottom of chat!
var scrolltoh = $('#chat_box')[0].scrollHeight;
$('#chat_box').scrollTop(scrolltoh);
//reset value of message box
$('#input_ur_chat').val('');
}).fail(function(err)
{
//alert HTTP server error
alert(err.statusText);
});
}
});
});
});
Und hier ist mein PHP-Code,
Code: Select all
Mobile version