首页 / HTML5 / HTML5特性检测-检测技术
HTML5特性检测-检测技术
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了HTML5特性检测-检测技术,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含2095字,纯文字阅读大概需要3分钟。
内容图文
![HTML5特性检测-检测技术](/upload/InfoBanner/zyjiaocheng/390/0fe49c1a2fcf4abfbddd273be26764c2.jpg)
1、检测全局对象(window或navigator)是否拥有特定的属性。
如果浏览器支持地理位置API的话,全局的navigator对象上会有一个名为geolocation的属性,反之,navigator对象上该属性的值为undefined:
function supports_geolocation(){ return !!navigator.geolocation; }
如果不想写这个方法的话,可以使用modernizr库提供的方法检测浏览器是否支持地理位置API:
if(Modernizr.geolocation){ do something} else{ do something }
2、创建一个元素,然后检测该元素的DOM对象是否拥有特定的属性。以检测画布特性为例。
function supports_canvas(){ return !!document.createElement_x_x('canvas').getContext; }
return !!document.createElement_x_x('canvas').getContext;这一句是创建一个虚拟的
<canvas>元素,这个元素永远不会附加到页面上,因此对于用户来说它永远是不可见的。紧接着测试该元素是否拥有getContext()方法,这个方法只有当浏览器支持canvasAPI时才会存在,最后用双重否定!!来强制这个检测方法返回一个布尔值
如果不想写这个方法的话,可以使用modernizr库提供的方法检测浏览器是否支持canvas API:
if(Modernizr.canvas){ do something} else{ do something }
3、创建一个元素,然后检测该元素的DOM对象是否拥有特定的方法,同时调用这个方法并检查它的返回值。以检测支持视频格式为例。
function supports_video(){ return !!document.createElement_x_x('video').canPlayType; }
如果浏览器支持HTML5 video,被创建<video>元素对应的DOM对象会有一个名为canPlayType()的方法,反之,该对象只会拥有一些所有元素都有的公共属性。
如果不想写这个方法的话,可以使用modernizr库提供的方法检测浏览器是否支持video API:
if(Modernizr.video){ do something} else{ do something }
4、创建一个元素,给这个元素的DOM对象设定特定的属性值,然后检查浏览器是否保留了该属性值。以检测支持的<input>类型为例。
首先创建一个虚拟的<input>元素:var i=document.createElement_x_x("input");
<input>元素默认为文本类型,接下来将元素的类型设置成要检测的类型: i.setAttribute("type","color");
如果浏览器支持次特定的输入框类型,那么设置的type值会被保留,反之,依然为文本类型。
return i.type!=="text"; if(!Modernizr.inputtypes.date){ //浏览器有没有提供,type="date">原生支持 }
以上就是HTML5特性检测-检测技术的内容,更多相关内容请关注PHP中文网(www.gxlcms.com)!
内容总结
以上是互联网集市为您收集整理的HTML5特性检测-检测技术全部内容,希望文章能够帮你解决HTML5特性检测-检测技术所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。