
[英]jQuery .focus() and .blur() not working in Chrome or Safari
[英]In Safari/Chrome, how can I trigger a function A on both ready() and focus() and a function B on blur()?
我有一个计数器,当窗口处于焦点时倒计时,当窗口处于模糊状态时停止计数。
我的代码与Firefox和IE完美配合,因为使用FF或IE时,在加载文档时会触发focus()事件。
但在Safari / Chrome中并非如此。
有没有人知道如何在加载Safari / Chrome时触发countDown()函数? 非常感谢
我的代码有这样的结构:
$(document).ready(function(){
$(window).focus(function(){
countDown();
});
$(window).blur(function(){
stopCount();
});
});
你怎么样countDown
把countDown
? 您可能必须先检查窗口是否仍然具有焦点。 而且你应该确保countDown
没有被调用 - 或者使countDown“抵抗”额外的调用。
或者另一种方法,那就是让代码更清晰一点就是从$(document).ready
调用$(document).focus()
。
更多背景:
$(document).ready(function(){
$(window).focus(function(){
countDown();
}).blur(function(){
stopCount();
}).focus();
});
你可以尝试这样的事情:
if ( $.browser.webkit ) {
countDown();
}
我想这会检查它是否是一个webkit浏览器,然后触发countDown()事件
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.