使用 Page Visibility 如何为用户省电?

发布于 2021-12-09 22:01:47 字数 3675 浏览 1014 评论 0

21 世纪的基本生理需求应该是电源和 wifi 了。有电有网,基情四射;没电没网,只能左手右手了。随着 HTML5 以及 CSS3 技术支持与发展,以及手机越来越高性能带来的可行性。移动端的页面显然会越来越烧电。

用户一旦感觉到浏览这破页面手机电量流失很快,很大程度生会影响用户的浏览质量,继而影响转化率,甚至用户丢失。

试想一下,当你正在酣畅淋漓的浏览网页,才刚冲过点不久的手机,马上发现电量又见红了,并且可能伴随着手机过热,哦~雅蠛蝶! 只能忍痛关页面了。

我们要做的还有很多,怎样在小细节上让用户的手机在电量上更坚挺,提升用户浏览网页的快感,让性福与高潮更持久一点,就是今天的主题了


(盗图一张)

用什么省电

我们借助 Page Visibility API 等,来提升用户体验,Page Visibility ,我们可以至少达到以下一种或几种的好处:

  • 节省服务器资源,Ajax 轮询这类服务器资源占用常常会被忽略,关闭这种请求可以节省资源。
  • 节省内存消耗。
  • 节省带宽消耗。

什么是 Page Visibility

Page Visibility 是 HTMl5 推出的一个API, 会在浏览器的 document 对象上添加两个属性 hidden 和 visibilityState 。如果当前的标签被激活了,那么 document.hidden 的值为 false ,否则为 true 。visibilityState 则有4个可能值:

  • hidden:当浏览器最小化、切换标签、电脑锁屏时 visibilityState 值是 hidden
  • visible:当浏览器最顶级上下文(context)的 document 至少显示在一个屏幕当中时,返回 visible;当浏览器窗口没有最小化,但是浏览器被其他应用遮挡时,这时也为 visible
  • prerender:当文档被加载到屏幕画面以外或者不可见时返回 prerender,这个是非必要属性,浏览器可选择性的支持。
  • unloaded:当文档将要被离开 ( unload ) 时返回 unloaded,浏览器也可选择性的支持这个属性

参考 :Don't lose user and app state, use Page Visibility

我们做了什么

轮播图模式是用的非常多的一种交互模式,当顶部有一个轮播图,当用户在浏览商品列表的时候,轮播图消失在屏幕中;当用户点击某个商品进入详情页面,此时轮播图都应该停止轮播,只有当用户返回或者再次回到轮播图位置,轮播图才继续轮播效果。
我们针对 banner 轮播图组件,添加了这个特性的支持,做到了类似native的轮播位置记忆功能。做到 H5 和 Native 的体验更加一致,减少耗电量和资源占用。

  • 当浏览器最小化、切换标签、电脑锁屏时,将轮播图停止掉;打开时,开启;
  • 当轮播图在页面可视区域内,开启轮播,否则,将轮播图停止掉

怎么做

  • 监听 Page Visibility 事件,获取 visibilityState 的状态值,确定开启停止
  • 如果获取不到状态值,配合使用监听 pagehow 和 pagehide 到达同样目的
  • 手淘 webview 环境,通过 WindVane 提供的 Background 和 Active 事件达到同样的效果
  • 监听浏览器滚动,获取轮播图位置,查看是否在可视屏幕中

为用户带来了什么

手淘提供了特有的方法来获得监听事件,并且兼容性非常好

  • 减少了资源占用,节省了用户的电量消耗
  • 保持了轮播位置的记忆功能。
  • 提升了用户体验

Page Visibility 的支持情况

Page Visibility 在手机平台的支持度在 50% 左右,这也就意味着,我们可以帮 50% 的用户提升用户体验
对于目前浏览器版本更新的速度,支持度只会越来越好,受益的用户也会越来越多。
当然,手淘有自己独立的支持方法,也就是说,手淘能更好更便捷的让用户的体验得到提升。

平台和浏览器支持情况

用户手机环境情况

以下数据为个人单独demo小范围测试 拎了几款代表性手机 浏览器版本为最新

附录:

魅族 note1 Android5.1

华为 T50 GEM-703L EMUI3.1

三星 Galaxy GT-I9100 Android4.0

小米 MI-4c MIUI7.0.8.0 Android5.1.1

iPhone5S IOS9.1

iPhone6S IOS9.1

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据

关于作者

终陌

暂无简介

0 文章
0 评论
681 人气
更多

推荐作者

醉城メ夜风

文章 0 评论 0

远昼

文章 0 评论 0

平生欢

文章 0 评论 0

微凉

文章 0 评论 0

Honwey

文章 0 评论 0

qq_ikhFfg

文章 0 评论 0

    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文