2016/1/23 js

/*classie--class help functions
** from bonzo https://github.com/ded/bonzo
* classie.has(elem,"my-class")--true/false
* classie.add(elem,"my-new-class")
* classie.remove(elem,'my-unwanted-class')
* classie.toggle(elem,'my-class')
*/
/*jshint browser:true struct:true udef:true*/
/*global define:false*/
(function(window){
'use strict';
function classReg(className){
return new RegExp("(^|//s+)" + className + "(\\s+|$)");
}
// classList support for class management
// altho to be fair, the api sucks because it won't accept multiple classes at once
var hasClass,addClass,removeClass;
if('classList' in document.documentElement){
hasClass = function(elem,c){
return elem.classList.contains(c);
}
addClass = function(elem,c){
return classList.add(c);
}
removeClass = function(elem,c){
return classList.remove();
};
}
else{
hasClass = function(elem,c){
return classReg(c).test(elem.className);
};
addClass = function(elem,c){
if(!hasClass(elem,c)){
elem.className = elem.className + "" + c;
}
};
removeClass = function(elem,c){
elem.className = elem.className.replace(classReg(c),'');
};
}
function toggleClass(elem,c){
var fn = hasClass(elem,c)?removeClass:addClass;
fn(elem,c);
}
var classie = {
//full names
hasClass : hasClass,
addClass:addClass,
removeClass:removeClass,
toggleClass:toggleClass,
//short names
has:hasClass,
add:addClass,
remove:removeClass,
toggle:toggleClass
};
//transport
if(typeof define == 'function'&& define.amd){
//AMD
define (classie);
}
else{
//browser global
window.classie = classie;
}
})(window);

;window.Modernizr=function(a,b,c){function z(a){j.cssText=a}
function A(a,b){return z(m.join(a+";")+(b||""))}
function B(a,b){return typeof a===b}
function C(a,b){return!!~(""+a).indexOf(b)}
function D(a,b){for(var d in a){var e=a[d];
if(!C(e,"-")&&j[e]!==c)return b=="pfx"?e:!0}
return!1}
function E(a,b,d){for(var e in a){var f=b[a[e]];
if(f!==c)return d===!1?a[e]:B(f,"function")?f.bind(d||b):f}return!1}
function F(a,b,c){var d=a.charAt(0).toUpperCase()+a.slice(1),e=(a+" "+o.join(d+" ")+d).split(" ");
return B(b,"string")||B(b,"undefined")?D(e,b):(e=(a+" "+p.join(d+" ")+d).split(" "),E(e,b,c))}
var d="2.6.2",e={},f=!0,g=b.documentElement,h="modernizr",i=b.createElement(h),j=i.style,k,
l={}.toString,m=" -webkit- -moz- -o- -ms- ".split(" "),
n="Webkit Moz O ms",o=n.split(" "),p=n.toLowerCase().split(" "),q={},r={},s={},t=[],u=t.slice,v,
w=function(a,c,d,e){var f,i,j,k,l=b.createElement("div"),m=b.body,n=m||b.createElement("body");
if(parseInt(d,10))while(d--)j=b.createElement("div"),j.id=e?e[d]:h+(d+1),l.appendChild(j);
return f=["&#173;",'<style id="s',h,'">',a,"</style>"].join(""),
l.id=h,(m?l:n).innerHTML+=f,n.appendChild(l),m||(n.style.background="",n.style.overflow="hidden",
k=g.style.overflow,g.style.overflow="hidden",g.appendChild(n)),i=c(l,a),m?l.parentNode.removeChild(l):
(n.parentNode.removeChild(n),g.style.overflow=k),!!i},
x={}.hasOwnProperty,y;!B(x,"undefined")&&!B(x.call,"undefined")?y=function(a,b){return x.call(a,b)}:
y=function(a,b){return b in a&&B(a.constructor.prototype[b],"undefined")},
Function.prototype.bind||(Function.prototype.bind=function(b){var c=this;if(typeof c!="function")throw new TypeError;
var d=u.call(arguments,1),e=function(){if(this instanceof e){var a=function(){};a.prototype=c.prototype;
var f=new a,g=c.apply(f,d.concat(u.call(arguments)));return Object(g)===g?g:f}
return c.apply(b,d.concat(u.call(arguments)))};
return e}),
q.csstransforms3d=function(){var a=!!F("perspective");
return a&&"webkitPerspective"in g.style&&w("@media (transform-3d),(-webkit-transform-3d)" +
"{#modernizr{left:9px;position:absolute;height:3px;}}",
function(b,c){a=b.offsetLeft===9&&b.offsetHeight===3}),a};
for(var G in q)y(q,G)&&(v=G.toLowerCase(),e[v]=q[G](),t.push((e[v]?"":"no-")+v));
return e.addTest=function(a,b){if(typeof a=="object")
for(var d in a)y(a,d)&&e.addTest(d,a[d]);
else{a=a.toLowerCase();
if(e[a]!==c)return e;b=typeof b=="function"?b():b,typeof f!="undefined"&&f&&(g.className+=" "+(b?"":"no-")+a),e[a]=b}return e},

转载于:https://www.cnblogs.com/whatcanido/p/5153143.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值