Ifvisible.js 是一个跨浏览器、轻量级的方式,用户检查用户在浏览页面或正在与它进行交互。它可以处理活动状态,如在页面上空闲或活跃。您还可以使用 ifvisible.js 智能设置您的间隔,如果用户是空闲或没有看到页面的间隔时间会自动停止。
在示例网页中,空闲持续时间设置为 30 秒,这样您就可以轻松地看到效果,如果在 30 秒的时间内,该网页没有任何来自用户的操作,那么网页将添加一个白色透明蒙版。
使用方法
-
//如果页面是可见的现在,
-
if( ifvisible.now() ){
-
//显示的弹出
-
openPopUp();
-
}
手柄开关选项卡或浏览器最小化状态
-
ifvisible.on("blur", function(){
-
//动画暂停
-
animations.pause();
-
});
-
ifvisible.on("focus", function(){
-
//恢复所有动画
-
animations.resume();
-
});
能够处理 ifvisible.js 活动状态,如空闲或活动页面上
-
ifvisible.on("idle", function(){
-
//停止自动更新的实时数据
-
stream.pause();
-
});
-
ifvisible.on("wakeup", function(){
-
//返回更新的数据
-
stream.resume();
-
});
默认的空闲等待时间是 60 秒,但你可以改变它用 setIdleDuration 方法
-
ifvisible setIdleDuration (120 )
-
//120秒后,将成为闲置
您可以设置智能间隔与 ifvisible.js,如果用户是空闲或没有看到页面的间隔时间会自动停止
-
//如果页面是可见的运行这个函数上每隔半秒
-
ifvisible.onEvery(0.5, function(){
-
//做一个动画的标志,只有当页面可见
-
animateLogo();
-
});
在线示例地址:ifvisible.js test page
https://github.com/serkanyersen/ifvisible.js/