Dan*_*tti 8 javascript mouse dom javascript-events
我正在开发一个"实时"Web应用程序,它每10秒向服务器发送一次AJAX请求.显然这是带宽密集型的,我想知道是否有任何解决方案.
我的想法是检查用户是否没有移动他的鼠标X秒.我怎么能做到这一点?
zzz*_*Bov 14
您可能想要收听以下部分或全部事件:
mouseMove,mouseClick,mouseUp,mouseDown,keyDown,keyUp,keyPress
设置一个计时器在一段时间的闲置(60秒?)后关闭,这将关闭你的开关,确保你在ajax请求之前检查你的开关.
理想情况下,用户保持空闲的时间越长,您的ajax调用就会以指数方式控制到某个低值.
$(window).bind('mousemove click mouseup mousedown keydown keypress keyup submit change mouseenter scroll resize dblclick', someEvent);
var active = true,
delay = 60000,
timer = null;
function someEvent(e)
{
active = true;
if (timer) clearTimeout(timer);
timer = setTimeout(function(t){
active = false;
}, delay);
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
7163 次 |
| 最近记录: |