-
Notifications
You must be signed in to change notification settings - Fork 2
/
Copy pathmediaquery.min.js
6 lines (6 loc) · 4.56 KB
/
mediaquery.min.js
1
2
3
4
5
6
/*!
* https://github.com/skaiser/mediaquery.js
* MIT License (MIT)
* Copyright (c) 2012 Stephen Kaiser
*/
(function(d,a,e){var c,f=a.documentElement,b=a.getElementsByTagName("head")[0];c=(function(){var x="0.4.4",M="",L="",k=false,N,s,C,i,y,q,z,l;l=d.jsmq_config||{};l.PREFIX=s=l.PREFIX||"jsmq-";l.BELOW_PREFIX=C=l.BELOW_PREFIX||"below-";l.UNITS=i=l.UNITS||"em";l.sizes=l.sizes||{"61":s+"large","60":s+"medium","45":s+"small","30":s+"smaller"};l.elemNames=l.elemNames||{viewport:s+"media-width",device:s+"media-device-width",css:s+"styles"};l.useMyOwnStyles=l.useMyOwnStyles||false;l.useMyOwnElements=l.useMyOwnElements||false;l.supportOldBrowsers=l.supportOldBrowsers||true;l.DEFAULT_EVENT=y=l.DEFAULT_EVENT||"jsmq:update";l.DEFAULT_EVENT_ELEM=q=l.DEFAULT_EVT_ELEM||l.elemNames.viewport;l.delayInit=l.delayInit||false;l.isTest=l.isTest||false;l.names={};function T(U){return a.getElementById(U)}function g(U){return U.replace(/^\s+|\s+$/g,"")}function t(X,V,W){var U;if(V){U=V.length;W=(W&&W<U-1)?W:0;for(;W<U;W++){if(W in V&&V[W]==X){return W}}}return -1}function w(U,V){var W;V=V||l.sizes;for(W in V){if(V.hasOwnProperty(W)){if(V[W]===U){return W}}}}function F(X,W){var V={},U;for(U in X){if(X.hasOwnProperty(U)){V[X[U]]=W?Number(U):U}}return V}l.names=F(l.sizes,true);function Q(U){return l[U]!==e?l[U]:l}function K(U){return U?screen.width:d.innerWidth||f.clientWidth}z=function(U){if(d.getComputedStyle&&d.matchMedia){z=function(X){var V=d.getComputedStyle,W=X?"device":"viewport";return parseInt(V(T(l.elemNames[W])).getPropertyValue("width"),10)}}else{if(l.supportOldBrowsers&&(b.currentStyle||d.getComputedStyle)){z=function(aa){var X,Z,V="1em",Y=aa?"device":"viewport",W=K(aa);if(i==="em"){X=T(l.elemNames[Y]);X.style.height=V;if(X.currentStyle){V=X.currentStyle.height}else{V=d.getComputedStyle(X).getPropertyValue("height")}Z=V.match(/em/)!==null?16:parseInt(V,10);X.style.height=0;return W/Z}return W}}else{z=function(){return 0}}}};z();function r(){var U=[],W=l.sizes,V;for(V in W){if(W.hasOwnProperty(V)){U.push(V)}}return U.sort().reverse()}N=r();function n(Y){var V=r(),U=V.length,X=V[0],W=1;for(;W<=U;W++){if(Y<=X&&Y>(V[W]||0)){return l.sizes[X]}X=V[W]}return l.sizes[V[0]]}function v(W,V){if(W===e||typeof W==="boolean"){V=W;var U=z(V);return l.sizes[U]||n(U)}if(typeof W==="string"){W=l.names[W]}return W?parseInt(W,10)===z(V):false}function O(V){var U=(typeof V==="string"&&/px|%|em/.test(V))?V:0;return K(false)+U}function h(V,U){V=typeof V==="number"?V:l.names[V];return V?z(U)<parseInt(V,10):false}function B(V){var U=a.createElement("style");U.type="text/css";U.setAttribute("id",l.elemNames.css);if(U.styleSheet){U.styleSheet.cssText=V}else{U.appendChild(a.createTextNode(V))}b.appendChild(U)}function I(V,U){var W=a.createElement(U||"script"),X=l.elemNames[V];W.setAttribute("id",X);return W}function E(){b.appendChild(I("viewport"));b.appendChild(I("device"))}function o(U){return"@media only screen and (max-width: "+U+i+") {#"+l.elemNames.viewport+" {width: "+U+"px;}}\n@media only screen and (max-device-width: "+U+i+") {#"+l.elemNames.device+" {width: "+U+"px;}}\n"}function p(){var U=[],W="",V;U=r();for(V=0;V<U.length;V++){if(V===0){W="#"+l.elemNames.viewport+",#"+l.elemNames.device+" {height: 0;display: none;position: absolute;left: -999999em;z-index: -10;width: "+U[V]+"px;}\n"}else{W+=o(U[V])}}B(W)}function A(U,X,V){var W;U=U||y;X=X||T(q);V=V||M;if("createEvent" in a){W=a.createEvent("Event");W.initEvent(U,true,true);W.className=V;W.baseClass=L;W.size=l.names[L]||w(L);X.dispatchEvent(W)}}function j(U){return t(w(U),N)}function u(U){if(U>0&&U<N.length){return l.sizes[N[U-1]]}}function m(U){return u(j(U))}function H(U){var W=j(U),V="";if(W>0){do{V+=R(u(W))||""}while(W--)}return V}function R(U){return U?" "+C+U:""}function J(){var U=v();L=U;if(M!==U){U+=H(U);f.className=g(f.className).replace(M,U);M=U;return M}}function G(W,X,Z){var V=[].slice.call(arguments),U=V.pop(),Y;Y=J();if(Y){A(W,X,Y)}if(typeof U==="function"){U.apply()}return d.jsmq}function D(V,U){if(typeof V==="string"&&U!==e){l[V]=U;if(V==="sizes"){l.names=F(l.sizes,true)}else{if(V==="names"){l.sizes=F(l.names)}else{if(V==="removeTest"){delete l[U];delete l[V]}}}return d.jsmq}}function S(){var U=b,V=l.elemNames,X;for(X in V){if(V.hasOwnProperty(X)){try{U.removeChild(T(V[X]))}catch(W){}}}U=null;k=false;return d.jsmq}function P(){if(!k){if(!l.useMyOwnStyles){p()}if(!l.useMyOwnElements){E()}G()}else{if(k&&l.isTest){S()}}k=true;return d.jsmq}return{VERSION:x,update:G,fire:A,get:Q,set:D,init:P,isAt:v,exact:O,isBelow:h,reload:S,getSizes:r,nextLarger:m,allLarger:H}})();d.jsmq=c;if(!d.jsmq.get("delayInit")){d.jsmq.init()}})(window,window.document);