【问题标题】:How to check whether a specific page is time overdue by mouseover event?如何通过 mouseover 事件检查特定页面是否超时?
【发布时间】:2014-10-19 05:25:39
【问题描述】:

从 jQuery 的文档(或 javascript)中您可以看到,当您将鼠标移动到某个特定位置时,将始终调用 jQuery 的 mousemove。

我的问题是:

我想让我的asp.net检查一下是否会话超时……所以我想如果有人的鼠标长时间不动,下次鼠标开始移动时,我'会检查他/她是否逾期。但是mousemove会紧紧地一一调用很多事件……如何捕捉到最后一个mousemove事件?

或者有没有其他方法可以通过鼠标移动来检查会话超时(注意:由于我的项目的 mechasim 限制,我没有使用 asp.net 的表单身份验证)。

谢谢大家!

【问题讨论】:

    标签: jquery session authentication timeout authorization


    【解决方案1】:

    而不是在鼠标不活动时这样做。在点击不活动时执行此操作。 对于每次点击重新启动 setTimeout 以使页面超时。这使得代码更容易,并且添加全局超时变量也很简单。即

     var timeoutInterval = 100000;
     var timer1 = setTimeout(function() { doSomething(); doSomethingelse(); }, timeoutInterval );
     clearTimeout(timer1)
    

    如果你必须使用鼠标定位。 在 JavaScript 中使用 onmousemove 或在 jQuery 中使用 mousemove here

    逻辑变成存储最后的 x,y 位置。如果与上次的差值大于超时时间,则可以超时。

    【讨论】:

    • 谢谢,但是当有人使用他/她的鼠标移动时,我也应该检查时间是否过期。
    • 正如我上面所说的,如果我处理 mousemove 事件,会触发很多事件。
    • 正如我所说的那样。为什么不能将最后一次移动事件存储为全局?
    • 也许我没有说清楚:我想要的是当用户移动他/她的鼠标时,检查时间是否超时。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-03-01
    • 1970-01-01
    • 2011-12-21
    • 2011-06-19
    相关资源
    最近更新 更多