我设法根据点击的用户创建唯一打开的聊天窗口但我不能在任何聊天窗口上发送消息,除了第一个.
我想要实现这个目标:
我正在努力实现那个^
这是我到目前为止:
<script> //CHAT SYSTEM
function chatWith(id, status, username){
$("#chats").append('<div class="chat_window" id="chat_'+id+'"><div class="chat_top"><span class="chat_username">'+status+username+'</span><span class="chat_x"><a href="javascript:void(0)" onclick="minChat('+id+')">-</a> <a href="javascript:void(0)" onclick="closeChat('+id+')">X</a> </span> </div> <div class="chat_content"></div> <form method="post" name="chat" action=""> <textarea class="chat_text" maxlength="200" name="chat_text" id="chat_text_'+id+'" placeholder="Start typing..."></textarea> </form> </div></dv>');
$("#chat_"+id).slideToggle("fast");
}
//send messages
var user_id = '<?php echo $session_user_id;?>';
var auto_refresh = setInterval(function () {
var b = $("#chat_"+user_id+":last").attr("id");
$.getJSON("chat.php?user_id="+user_id,function(data){
$.each(data.posts, function(i,data) {
if(b != data.id) {
var div_data="<span id='"+data.id+"'>"+data.user_id+": "+data.msg+"</span>";
$(div_data).appendTo("#chat_"+user_id);
}
});
});
}, 2000);
$(document).ready(function(){
$(document).keypress(function(e) { …
Run Code Online (Sandbox Code Playgroud) 我有两个setInterval,每个运行一个函数每20秒.有没有办法将两个函数放在同一个setInterval调用下?
setInterval(function(){
//function a
}, 20000);
setInterval(function(){
//function b
}, 20000);
Run Code Online (Sandbox Code Playgroud)
对于这样的事情:
setInterval( (functionA, functionB) , 20000);
Run Code Online (Sandbox Code Playgroud) 我想要一个导航栏,告诉用户他们刚来自哪里.示例:主页 - >发布
但如果他们在他们的职位经理并点击帖子,我希望它说帖子经理 - >发布
我读到这$_SERVER['HTTP_REFERER']
不足以获得完整的URL,因此我没有用,因为我希望导航栏都可以点击
任何帮助深表感谢!
我想让每个帖子在作者上线时变成绿色.我已经尝试解决我的编码问题至少一周了!!! 请帮帮我!
例如,如果有3个用户发布了一些内容:
并且user1登录后,它将变为:
然后说user2同时登录:
现在,如果user2或user1注销,它将返回灰色.一切都是实时的 - 不需要刷新.我想这样做,以便当我打开网站时,我可以立即看到谁在线而不是等待2秒(在这种情况下)看到实时更新一次发生.
我还希望能够为帖子添加动态链接.有没有办法在div之前插入标签,这取决于用户是否登录?
我的尝试:
更新:
Status.php
header('Content-Type: application/json');
$array = array();
$res = mysql_query("SELECT * FROM `users` WHERE `status` = 1");
if(mysql_num_rows($res) > 0){
while($row = mysql_fetch_assoc($res)){
$array[] = $row['user_id']; // this adds each online user id to the array
}
}
echo json_encode($array);
Run Code Online (Sandbox Code Playgroud)
主页
$(document).ready(function() {
setInterval(function(){
$.ajax({
url: 'status.php',
dataType: "json",
type: 'GET',
success: function(data) {
if (data.length > 0){ // if at least 1 is online
$('.status').each(function(){ // loop through each …
Run Code Online (Sandbox Code Playgroud)