JS判断浏览器是否支持某一个CSS3属性的最佳实践

css3的出现让浏览器的表现更加的丰富多彩,表现冲击最大的就是动画了,在日常书写动画的时候,很有必要去事先判断浏览器是否支持,尤其是在写CSS3动画库的时候。比如transition的animation-play-state,就只有部分浏览器支持。

检测方法

下面的方法可以使用脚本判断浏览器是否支持某一个CSS3属性:

/**2017-01-05
    * 判断浏览器是否支持某一个CSS3属性
    * @param {String} 属性名称
    * @return {Boolean} true/false
    *
*/

function supportCss3(style) {
    var prefix = [‘webkit‘, ‘Moz‘, ‘ms‘, ‘o‘],
    i,
    humpString = [],
    htmlStyle = document.documentElement.style,
    _toHumb = function (string) {
    return string.replace(/-(\w)/g, function ($0, $1) {
    return $1.toUpperCase();
    });
    };

    for (i in prefix)
    humpString.push(_toHumb(prefix[i] + ‘-‘ + style));

    humpString.push(_toHumb(style));

    for (i in humpString)
    if (humpString[i] in htmlStyle) return true;

    return false;
}

使用方法

alert(supportCss3(‘animation-play-state‘));
时间: 2024-10-06 17:29:15

JS判断浏览器是否支持某一个CSS3属性的最佳实践的相关文章

JS判断浏览器是否支持某一个CSS3属性

1.引子 css3的出现让浏览器的表现更加的丰富多彩,表现冲击最大的就是动画了,在日常书写动画的时候,很有必要去事先判断浏览器是否支持,尤其是在写CSS3动画库的时候.比如transition的animation-play-state,就只有部分浏览器支持. 2.检测方法 下面的方法可以使用脚本判断浏览器是否支持某一个CSS3属性: Js代码   /** * 判断浏览器是否支持某一个CSS3属性 * @param {String} 属性名称 * @return {Boolean} true/fa

JS判断浏览器是否支持某一个CSS3属性的方法

var div = document.createElement('div'); console.log(div.style.transition); //如果支持的话, 会输出 "" //如果不支持的话, 会输出 undefined. //新版本的浏览器不用判断前缀了, 老版本的浏览器还是需要判断前缀 //可参考: http://www.jb51.net/article/56412.htm

判断浏览器是否支持某一个CSS3属性

function supportCss3(style) { var prefix = ['webkit', 'Moz', 'ms', 'o'], i, humpString = [], htmlStyle = document.documentElement.style, _toHumb = function (string) { return string.replace(/-(\w)/g, function ($0, $1) { return $1.toUpperCase(); }); };

JS判断浏览器是否支持触屏事件,如果支持就调用

var hasTouch=function(){ var touchObj={}; touchObj.isSupportTouch = "ontouchend" in document ? true : false; touchObj.isEvent=touchObj.isSupportTouch?'touchstart':'click'; return touchObj.isEvent; }

document.documentElement.style判断浏览器是否支持Css3属性

1.document.documentElement.style 属性定义了当前浏览器支持的所有Css属性 包括带前缀的和不带前缀的 例如:animation,webkitAnimation,msAnimation等 2.判断浏览器是否支持制定的css属性 function support(cssName) { var htmlStyle = document.documentElement.style; if (cssName in htmlStyle) return true; return

判断浏览器是否支持某个css3属性的javascript方法

判断浏览器是否支持css3某个属性的方法: /** * 判断浏览器是否支持某一个CSS3属性 * @param {String} 属性名称 * @return {Boolean} true/false * @version 1.0 * @author ydr.me * 2014年4月4日14:47:19 */   function supportCss3(style) { var prefix = ['webkit', 'Moz', 'ms', 'o'], i, humpString = [],

判断浏览器是否支持CSS3 已经初步探索JS 惰性加载

分享一个判断浏览器是否支持的函数,然后有牵扯到了一个懒性加载的概念. var iscss3=(function(){ var _style=document.createElement("div").style; return 'transition' in _style||'mozTransition' in _style||'webkitTransition' in _style; })() 什么是惰性加载呢,像我们JS和CSS一样 很多浏览器属性和方法都不兼容,需要用到大量的分支

web开发之浏览器(二)----JQuery或JS判断浏览器内核版本号以及是否支持W3C盒子模型

1,JQuery或JS判断浏览器内核版本号以及是否支持W3C盒子模型 jQuery 从 1.9 版开始,移除了 $.browser 和 $.browser.version , 取而代之的是 $.support .在更新的 2.0 版本中,将不再支持 IE 6/7/8. 以后,如果用户需要支持 IE 6/7/8,只能使用 jQuery 1.9.  以后,如果用户需要支持 IE 6/7/8,只能使用 jQuery 1.9及以下的版本. 如果要全面支持 IE,并混合使用 jQuery 1.9及以下 和

js判断浏览器类型

js判断浏览器类型  <script type="text/javascript" >     <!--   function getOs()   {       var OsObject = "";      if(isIE = navigator.userAgent.indexOf("MSIE")!=-1) {           return "MSIE";      }      if(isFiref