最新文章专题视频专题问答1问答10问答100问答1000问答2000关键字专题1关键字专题50关键字专题500关键字专题1500TAG最新视频文章推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37视频文章20视频文章30视频文章40视频文章50视频文章60 视频文章70视频文章80视频文章90视频文章100视频文章120视频文章140 视频2关键字专题关键字专题tag2tag3文章专题文章专题2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章专题3
问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501
当前位置: 首页 - 科技 - 知识百科 - 正文

HTML5特性检测-检测技术

来源:懂视网 责编:小采 时间:2020-11-27 15:16:00
文档

HTML5特性检测-检测技术

HTML5特性检测-检测技术:4种基本技术可以用于检测浏览器是否支持某种html5特性,从简单到复杂的顺序:1、检测全局对象(window或navigator)是否拥有特定的属性。如果浏览器支持地理位置API的话,全局的navigator对象上会有一个名为geolocation的属性,反之,navigator
推荐度:
导读HTML5特性检测-检测技术:4种基本技术可以用于检测浏览器是否支持某种html5特性,从简单到复杂的顺序:1、检测全局对象(window或navigator)是否拥有特定的属性。如果浏览器支持地理位置API的话,全局的navigator对象上会有一个名为geolocation的属性,反之,navigator

4种基本技术可以用于检测浏览器是否支持某种html5特性,从简单到复杂的顺序:

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">原生支持
}

声明:本网页内容旨在传播知识,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。TEL:177 7030 7066 E-MAIL:11247931@qq.com

文档

HTML5特性检测-检测技术

HTML5特性检测-检测技术:4种基本技术可以用于检测浏览器是否支持某种html5特性,从简单到复杂的顺序:1、检测全局对象(window或navigator)是否拥有特定的属性。如果浏览器支持地理位置API的话,全局的navigator对象上会有一个名为geolocation的属性,反之,navigator
推荐度:
  • 热门焦点

最新推荐

猜你喜欢

热门推荐

专题
Top