Jquery/Javascript:可以知道页面何时聚焦吗?
我的目标是在聚焦“页面选项卡”时使用jquery自动刷新某些组件。我有一个“购物车排序”,我想自动更新它,即使你是显示我的网站从超过1个标签。 另外,我正在尝试从页面内的iframe开始工作 这是可能的,还是我必须使用一些定时器定期自动刷新 编辑:在阅读解决方案后,我让它对每个焦点都有效一次,不知道它是否是最好的解决方案,但它完成了工作:DJquery/Javascript:可以知道页面何时聚焦吗?,javascript,jquery,refresh,handler,Javascript,Jquery,Refresh,Handler,我的目标是在聚焦“页面选项卡”时使用jquery自动刷新某些组件。我有一个“购物车排序”,我想自动更新它,即使你是显示我的网站从超过1个标签。 另外,我正在尝试从页面内的iframe开始工作 这是可能的,还是我必须使用一些定时器定期自动刷新 编辑:在阅读解决方案后,我让它对每个焦点都有效一次,不知道它是否是最好的解决方案,但它完成了工作:D var focusPage = false; var firstFocus = false; $(window).focus(function () {
var focusPage = false;
var firstFocus = false;
$(window).focus(function () {
focusPage = true;
if (firstFocus) {
firstFocus = false;
//BAM! Refresh your stuff
}
});
$(window).blur(function () {
focusPage = false;
firstFocus = true;
});
您可以捕获窗口上的
焦点事件。
尝试使用:
$(window).focus(function(){
//refresh your div;
});
使用此选项似乎效果良好:
$(document).ready(function () {
$(window).focus(function () {
console.log("bam!");
})
});
正是你上面写的可以通过这个来实现
window.onblur=function(){
window.onfocus=function(){location.reload(true);}
};代码>
它只会做一次。您可以通过此调用减少代码。可能的重复:这对我不起作用:(我正在使用focus函数中的一个警报进行尝试,但它没有被触发:(甚至使用“body”和“#body”进行了尝试,但没有结果:(有一种方法可以仅在我的窗口第一次获得焦点时调用它?如果希望在第一次bam后取消它,请在焦点回调中使用$(window).unbind('focus');
)。