手机
当前位置:查字典教程网 >网页设计 >HTML5教程 >HTML5中判断用户是否正在浏览页面的方法
HTML5中判断用户是否正在浏览页面的方法
摘要:现在,HTML5里页面可见性接口就提供给了程序员一个方法,让他们使用visibilitychange页面事件来判断当前页面可见性的状态,并针...

现在,HTML5里页面可见性接口就提供给了程序员一个方法,让他们使用visibilitychange页面事件来判断当前页面可见性的状态,并针对性的执行某些任务。同时还有新的document.hidden属性可以使用。

document.hidden

这个新出现的document.hidden属性,它显示页面是否为用户当前观看的页面,值为ture或false。

document.visibilityState

visibilityState的值要么是visible (表明页面为浏览器当前激活tab,而且窗口不是最小化状态),要么是hidden (页面不是当前激活tab页面,或者窗口最小化了。),或者prerender (页面在重新生成,对用户不可见。).

visibilitychange事件

监听页面可见性变化非常容易:

// 各种浏览器兼容

var hidden, state, visibilityChange;

if (typeof document.hidden !== "undefined") {

hidden = "hidden";

visibilityChange = "visibilitychange";

state = "visibilityState";

} else if (typeof document.mozHidden !== "undefined") {

hidden = "mozHidden";

visibilityChange = "mozvisibilitychange";

state = "mozVisibilityState";

} else if (typeof document.msHidden !== "undefined") {

hidden = "msHidden";

visibilityChange = "msvisibilitychange";

state = "msVisibilityState";

} else if (typeof document.webkitHidden !== "undefined") {

hidden = "webkitHidden";

visibilityChange = "webkitvisibilitychange";

state = "webkitVisibilityState";

}</p> <p>// 添加监听器,在title里显示状态变化

document.addEventListener(visibilityChange, function() {

document.title = document[state];

}, false);</p> <p>// 初始化

document.title = document[state];

上面的代码会在页面可见性发生变化时修改document.title的值!

那么,什么时候需要使用visibilitychange事件呢?比如,如果你的页面上有嵌入视频正在播放,当用户切换到其它标签页时,你的标签页上的视频应自动暂停播放,当用户切换回来时继续接着播放。再比如,如果你的页面有自动刷新动作,当用户切换到其它标签页时,你就应该停止刷新,而当用户切换回来时继续之前的动作。

【HTML5中判断用户是否正在浏览页面的方法】相关文章:

使用HTML5做个画图板的方法介绍

HTML5视频支持检测(检查浏览器是否支持视频播放)

HTML5中的postMessage API基本使用教程

HTML5 embed 标签使用方法介绍

HTML5中新标签和常用标签详解

HTML5 离线应用之打造零请求、无流量网站的解决方法

HTML5中使用postMessage实现Ajax跨域请求的方法

HTML5 Canvas中绘制椭圆的4种方法

HTML5页面音视频在微信和app下自动播放的实现方法

HTML5中对id属性的定义与规定

精品推荐
分类导航