modernizr.min.js
6.99 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
window.Modernizr = function (e, t, n) {
function r(e) {
v.cssText = e
}
function o(e, t) {
return r(E.join(e + ";") + (t || ""))
}
function i(e, t) {
return typeof e === t
}
function a(e, t) {
return !!~("" + e).indexOf(t)
}
function c(e, t) {
for (var r in e) {
var o = e[r];
if (!a(o, "-") && v[o] !== n)return "pfx" == t ? o : !0
}
return !1
}
function s(e, t, r) {
for (var o in e) {
var a = t[e[o]];
if (a !== n)return r === !1 ? e[o] : i(a, "function") ? a.bind(r || t) : a
}
return !1
}
function l(e, t, n) {
var r = e.charAt(0).toUpperCase() + e.slice(1), o = (e + " " + w.join(r + " ") + r).split(" ");
return i(t, "string") || i(t, "undefined") ? c(o, t) : (o = (e + " " + C.join(r + " ") + r).split(" "), s(o, t, n))
}
var u = "2.6.2", f = {}, d = !0, m = t.documentElement, p = "modernizr", h = t.createElement(p), v = h.style, y, g = {}.toString, E = " -webkit- -moz- -o- -ms- ".split(" "), b = "Webkit Moz O ms", w = b.split(" "), C = b.toLowerCase().split(" "), F = {}, x = {}, N = {}, S = [], j = S.slice, k, M = function (e, n, r, o) {
var i, a, c, s, l = t.createElement("div"), u = t.body, f = u || t.createElement("body");
if (parseInt(r, 10))for (; r--;)c = t.createElement("div"), c.id = o ? o[r] : p + (r + 1), l.appendChild(c);
return i = ["­", '<style id="s', p, '">', e, "</style>"].join(""), l.id = p, (u ? l : f).innerHTML += i, f.appendChild(l), u || (f.style.background = "", f.style.overflow = "hidden", s = m.style.overflow, m.style.overflow = "hidden", m.appendChild(f)), a = n(l, e), u ? l.parentNode.removeChild(l) : (f.parentNode.removeChild(f), m.style.overflow = s), !!a
}, T = {}.hasOwnProperty, z;
z = i(T, "undefined") || i(T.call, "undefined") ? function (e, t) {
return t in e && i(e.constructor.prototype[t], "undefined")
} : function (e, t) {
return T.call(e, t)
}, Function.prototype.bind || (Function.prototype.bind = function (e) {
var t = this;
if ("function" != typeof t)throw new TypeError;
var n = j.call(arguments, 1), r = function () {
if (this instanceof r) {
var o = function () {
};
o.prototype = t.prototype;
var i = new o, a = t.apply(i, n.concat(j.call(arguments)));
return Object(a) === a ? a : i
}
return t.apply(e, n.concat(j.call(arguments)))
};
return r
}), F.csstransforms3d = function () {
var e = !!l("perspective");
return e && "webkitPerspective" in m.style && M("@media (transform-3d),(-webkit-transform-3d){#modernizr{left:9px;position:absolute;height:3px;}}", function (t, n) {
e = 9 === t.offsetLeft && 3 === t.offsetHeight
}), e
}, F.csstransitions = function () {
return l("transition")
};
for (var D in F)z(F, D) && (k = D.toLowerCase(), f[k] = F[D](), S.push((f[k] ? "" : "no-") + k));
return f.addTest = function (e, t) {
if ("object" == typeof e)for (var r in e)z(e, r) && f.addTest(r, e[r]); else {
if (e = e.toLowerCase(), f[e] !== n)return f;
t = "function" == typeof t ? t() : t, "undefined" != typeof d && d && (m.className += " " + (t ? "" : "no-") + e), f[e] = t
}
return f
}, r(""), h = y = null, function (e, t) {
function n(e, t) {
var n = e.createElement("p"), r = e.getElementsByTagName("head")[0] || e.documentElement;
return n.innerHTML = "x<style>" + t + "</style>", r.insertBefore(n.lastChild, r.firstChild)
}
function r() {
var e = y.elements;
return "string" == typeof e ? e.split(" ") : e
}
function o(e) {
var t = h[e[m]];
return t || (t = {}, p++, e[m] = p, h[p] = t), t
}
function i(e, n, r) {
if (n || (n = t), v)return n.createElement(e);
r || (r = o(n));
var i;
return i = r.cache[e] ? r.cache[e].cloneNode() : f.test(e) ? (r.cache[e] = r.createElem(e)).cloneNode() : r.createElem(e), i.canHaveChildren && !u.test(e) ? r.frag.appendChild(i) : i
}
function a(e, n) {
if (e || (e = t), v)return e.createDocumentFragment();
n = n || o(e);
for (var i = n.frag.cloneNode(), a = 0, c = r(), s = c.length; s > a; a++)i.createElement(c[a]);
return i
}
function c(e, t) {
t.cache || (t.cache = {}, t.createElem = e.createElement, t.createFrag = e.createDocumentFragment, t.frag = t.createFrag()), e.createElement = function (n) {
return y.shivMethods ? i(n, e, t) : t.createElem(n)
}, e.createDocumentFragment = Function("h,f", "return function(){var n=f.cloneNode(),c=n.createElement;h.shivMethods&&(" + r().join().replace(/\w+/g, function (e) {
return t.createElem(e), t.frag.createElement(e), 'c("' + e + '")'
}) + ");return n}")(y, t.frag)
}
function s(e) {
e || (e = t);
var r = o(e);
return y.shivCSS && !d && !r.hasCSS && (r.hasCSS = !!n(e, "article,aside,figcaption,figure,footer,header,hgroup,nav,section{display:block}mark{background:#FF0;color:#000}")), v || c(e, r), e
}
var l = e.html5 || {}, u = /^<|^(?:button|map|select|textarea|object|iframe|option|optgroup)$/i, f = /^(?:a|b|code|div|fieldset|h1|h2|h3|h4|h5|h6|i|label|li|ol|p|q|span|strong|style|table|tbody|td|th|tr|ul)$/i, d, m = "_html5shiv", p = 0, h = {}, v;
!function () {
try {
var e = t.createElement("a");
e.innerHTML = "<xyz></xyz>", d = "hidden" in e, v = 1 == e.childNodes.length || function () {
t.createElement("a");
var e = t.createDocumentFragment();
return "undefined" == typeof e.cloneNode || "undefined" == typeof e.createDocumentFragment || "undefined" == typeof e.createElement
}()
} catch (n) {
d = !0, v = !0
}
}();
var y = {
elements: l.elements || "abbr article aside audio bdi canvas data datalist details figcaption figure footer header hgroup mark meter nav output progress section summary time video",
shivCSS: l.shivCSS !== !1,
supportsUnknownElements: v,
shivMethods: l.shivMethods !== !1,
type: "default",
shivDocument: s,
createElement: i,
createDocumentFragment: a
};
e.html5 = y, s(t)
}(this, t), f._version = u, f._prefixes = E, f._domPrefixes = C, f._cssomPrefixes = w, f.testProp = function (e) {
return c([e])
}, f.testAllProps = l, f.testStyles = M, m.className = m.className.replace(/(^|\s)no-js(\s|$)/, "$1$2") + (d ? " js " + S.join(" ") : ""), f
}(this, this.document);