Web开发者的最爱 5个超实用的HTML5 API
转自:http://www.csdn.net/article/2012-11-09/2811682-HTML5-APIs
摘要:毫无疑问,HTML5已经成为当今最流行的一门技术,尤其是Web开发者们对HTML5的兴趣是日趋渐浓。HTML5的许多功能也都能在现代浏览器中得以实现。然而,作为开发者,除了关注HTML5的功能和开发工具外,你有对其API留意过吗?本文将为你提供5个非常实用的API,绝对让你收获满满!HTML5革命给Web开发者们带来许多超棒的JavaScript和HTML APIs,有些API已逐渐成为他们的好帮手。最近,我又接触到了5个非常实用的HTML5 API,在此和大家分享,希望这些API能帮助你开发出更好的Web Apps。
1.Fullscreen API
全屏API,顾名思义,全屏API可以让开发人员进入到浏览器的全屏模式,用户在使用的时候可以随意启动和取消该模式。这个API特别适合游戏开发者:
- //?Find?the?right?method,?call?on?correct?element ?
- function?launchFullScreen(element)?{ ?
- ??if(element.requestFullScreen)?{ ?
- ????element.requestFullScreen(); ?
- ??}?else?if(element.mozRequestFullScreen)?{ ?
- ????element.mozRequestFullScreen(); ?
- ??}?else?if(element.webkitRequestFullScreen)?{ ?
- ????element.webkitRequestFullScreen(); ?
- ??} ?
- } ?
- //?Launch?fullscreen?for?browsers?that?support?it! ?
- launchFullScreen(document.documentElement);?//?the?whole?page ?
- launchFullScreen(document.getElementById("videoElement"));?//?any?individual?element?
点击查看教程和示例
2.Page Visibility API
该API给开发者提供了一个监听事件,可以告诉开发者当前用户关注的页面TAB以及目前在窗口上所打开的页面状态。
- //?Adapted?slightly?from?Sam?Dutton ?
- //?Set?name?of?hidden?property?and?visibility?change?event ?
- //?since?some?browsers?only?offer?vendor-prefixed?support ?
- var?hidden,?state,?visibilityChange;? ?
- if?(typeof?document.hidden?!==?"undefined")?{ ?
- ????}?else?if?(typeof?document.mozHidden?!==?"undefined")?{ ?
- ????}?else?if?(typeof?document.msHidden?!==?"undefined")?{ ?
- ????}?else?if?(typeof?document.webkitHidden?!==?"undefined")?{ ?
- ????
- //?Put?event?listeners?into?place ?
- window.addEventListener("DOMContentLoaded",?function()?{ ?
- ??//?Grab?elements,?create?settings,?etc. ?
- ??var???????????????console.log("Video?capture?error:?",?error.code);? ?
- ????}; ?
- ?
- ??//?Put?video?listeners?into?place ?
- ??if(navigator.getUserMedia)?{?//?Standard ?
- ????navigator.getUserMedia(videoObj,?function(stream)?{ ?
- ??????????},?errBack); ?
- ??}?else?if(navigator.webkitGetUserMedia)?{?//?WebKit-prefixed ?
- ????navigator.webkitGetUserMedia(videoObj,?function(stream){ ?
- ????????????video.play(); ?
- ????},?errBack); ?
- ??} ?
- },?false);?
点击查看教程与示例
4.Battery API
显然,这是一款用在移动设备上的API,检查电池电量和状态。
- //?Get?the?battery! ?
- var??
- //?A?few?useful?battery?properties ?
- console.warn("Battery?charging:?",?battery.charging);?//?true ?
- console.warn("Battery?level:?",?battery.level);?//?0.58 ?
- console.warn("Battery?discharging?time:?",?battery.dischargingTime); ?
- ?
- //?Add?a?few?event?listeners ?
- battery.addEventListener("chargingchange",?function(e)?{ ?
- ??console.warn("Battery?charge?change:?",?battery.charging); ?
- },?false);?
点击阅读教程
5.Link Prefetching
Link Prefetching提供了链接预取功能,可以让开发者更清晰流畅的预加载网站内容,提高用户体验。
- <!--?full?page?-->?
- </>?
- ?
- <!--?just?an?image?-->?
- </>?
点击阅读教程
这是5个值得Web开发者们细心研究的API,在未来会被广泛运用。利用这些API可以帮你构建一些世界级的企业应用,不妨把它们组合起来使用看看!