我有了一个idletimer设置页面,你登出20分钟后:window.print()调用idletimer完成后,只在Chrome
(function($){
var clientTimeoutInMinutes = 20; // hard-coded as requirements ask for 20 minutes
$(document).bind("idle.idleTimer", function(){
form = document.FormOSDA;
form.TargetPage.value = "Logout";
form.action="myactionpage";
form.submit();
});
$.idleTimer(clientTimeoutInMinutes * 60 * 1000); // convert to milli secs
})(jQuery);
但在Chrome和仅适用于Chrome,这在我做一个window.print()之后被调用,即使它们立即取消了打印对话框。这种情况发生在Windows XP和Mac上的最新Chrome上,IE 8或Firefox不会发生。
我该如何阻止这种情况发生?
在继续之前,注销超时应始终在服务器端完成以保证安全。如果在用户方面完成,那么安全漏洞总是存在空间。 – tiagoboldt 2011-04-05 14:23:19
它完成了这两个地方。闲置计时器只是表示他们在表单上进行了一系列更改并点击提交之前就会看到“您已注销”屏幕。 – 2011-04-05 14:24:49
我会使用窗口焦点,模糊和文档mousemove,只需使用'window.location.href ='logout.html'' – Val 2011-04-05 14:29:06