HTML5 API --- Screen Orientation API简介
来源:互联网 发布:淘宝上买官换机的技巧 编辑:程序博客网 时间:2024/05/16 18:27
[本文属原创,如有转载,请注明出处http://blog.csdn.net/yl02520/article/]
在移动平台的游戏中,我们经常需要通过倾斜或旋转移动设备来控制游戏中的元素,例如赛车游戏中我们需要左右倾斜来控制赛车的左右转向,神庙逃亡游戏中我们同样需要左右倾斜移动设备来控制人物行走位置的方向。设想一下,如果设备的倾斜让游戏画面产生旋转,游戏画面需要重绘来适应屏幕尺寸的改变,那对游戏设计者来说是个灾难,但是在Web领域没有一个API能够控制屏幕的方向,此时W3C引入的Screen Orientation API就登上了舞台。
什么是Screen Orientation API呢?
Screen Orientation API是一个能让Web开发者能控制屏幕旋转方向的API,开发者可以利用该API检测屏幕的当前方向,在屏幕方向发生改变时得到消息通知,并能通过API将屏幕方向锁定到指定状态。至写本文时,目前主流的浏览器都已经部分支持或决定支持该API,FireFox 26和IE 11都支持了lockOrientation和unlockOrientation API,Crosswalk 4(基于Chromium的Web Runtime)也支持了该API,Android上的Chrome也正在实现该API,估计2014年一季度之前能够完成。
代码示例:
// 锁定屏幕为竖屏模式,不能设备如何旋转,屏幕都不会切换到横屏模式。window.screen.lockOrientation([“portrait-primary”,“portrait-secondary”]);// 锁定屏幕为横屏模式,无能设备如何旋转,屏幕都不会切换到竖屏模式。window.screen.lockOrientation([“landscape-primary”,“landscape-secondary”]);// 取消屏幕的锁屏,屏幕回到原始状态,window.screen.unlockOrientation();
另外需要注意的是Screen Orientation API的文档规范还处于开发阶段,浏览器的实现可能带有前缀,例如Firefox带有moz前缀,IE带有ms前缀。在使用前我们需要添加一些代码,保持更好的兼容性。
例如:
window.screen.lockOrientation = screen.lockOrientation ||screen.mozLockOrientation || screen.msLockOrientation;window.screen.unlockOrientation = screen.unlockOrientation|| screen.mozUnLockOrientation || screen.msUnLockOrientation;
0 0
- HTML5 API --- Screen Orientation API简介
- HTML5: Screen Orientation API
- Html5之Full Screen API
- HTML5多媒体API简介
- HTML5 File API 简介
- Android Api Demos登顶之路(二十)Screen Orientation
- HTML5中canvas API 简介
- HTML5 API ---WebAudio API与audio元素简介
- html5 api
- How to Use HTML5 FUll Screen API(如何使用HTML5全屏接口)
- API简介
- API简介
- API简介
- API简介
- API简介
- Android API Guides---Overview Screen
- 有关HTML5 API的简介 ------ 网摘集锦
- HTML5 API --- 跨文档消息(cross-document message)简介
- 领导智慧在于如何做人
- 我没有他喜欢的那个女生的硬件好,没有他们认识的时间长
- wikioi-天梯-提高一等-并查集-1074:食物链
- Fist blod!~~~
- linux awk命令详解
- HTML5 API --- Screen Orientation API简介
- Linux下ppa源管理
- mysql系列:常用查询的例子
- oracle 的insert into的详解
- java中String类的练习
- DRP之Oracle安装
- java中Date类的练习
- ios学习之universal
- Hadoop集群环境搭建(win7下vmware虚拟ubuntu)