Javascript 检测站点的其他用户何时键入

Javascript 检测站点的其他用户何时键入,javascript,php,jquery,mysql,Javascript,Php,Jquery,Mysql,我有一个聊天脚本,完全由PHP、MySQL和一些Java脚本组成 在聊天窗口(由两帧组成)中,第一帧显示用户消息,第二帧显示文本键入区域 这些帧与功能目标相连 echo "< frame name=\"chatviewpage\" src=\"$chatviewurl\" scrolling=\"no\">"; echo "< frame name=\"chattextpage\" target=\"chatviewpage\" src=\"$chattexturl\" scr

我有一个聊天脚本,完全由PHP、MySQL和一些Java脚本组成

在聊天窗口(由两帧组成)中,第一帧显示用户消息,第二帧显示文本键入区域

这些帧与功能
目标
相连

echo "< frame name=\"chatviewpage\" src=\"$chatviewurl\" scrolling=\"no\">";
echo "< frame name=\"chattextpage\" target=\"chatviewpage\" src=\"$chattexturl\" scrolling=\"no\">";
我希望能解释清楚,有人能帮忙吗?

当按键时:

  • 检查是否存在计时器

  • 如果有,就停下来 启动计时器

  • 计时器过期时,调用服务器方法

        var searchTimeout;
        document.getElementById('searchBox').onkeypress = function () {
            if (searchTimeout != undefined) clearTimeout(searchTimeout);
            searchTimeout = setTimeout(callServerScript, 250);
        };
        function callServerScript() {
            // your code here
        }
    

    基本上,这是将变量设置为true或false,具体取决于用户是否按下键或按下键:

        //setup before functions
    var delay = (function(){
        var timer = 0;
        return function(callback, ms){
            clearTimeout (timer);
            timer = setTimeout(callback, ms);
        };
    })();
    
    $('textarea').on('change',function(){
       delay(function(){
          //make your server call here
       },2000);
    });
    

    看起来您需要一些ajax来确定这一点。实际上,为了更精确,我的textarea看起来是这样的: