Files
cdnjs/ajax/libs/script.js/2.2.1/script.min.js
T
2014-04-23 13:25:32 +10:00

7 lines
1.6 KiB
JavaScript

/*!
* $script.js Async loader & dependency manager
* https://github.com/ded/script.js
* (c) Dustin Diaz, Jacob Thornton 2011
* License: MIT
*/
!function(a,b){typeof define=="function"?define(b):typeof module!="undefined"?module.exports=b():this[a]=b()}("$script",function(){function t(a,b,c){for(c=0,j=a.length;c<j;++c)if(!b(a[c]))return n;return 1}function u(a,b){t(a,function(a){return!b(a)})}function v(a,b,d){function p(a){return a.call?a():g[a]}function q(){if(!--n){g[m]=1,j&&j();for(var a in i)t(a.split("|"),p)&&!u(i[a],p)&&(i[a]=[])}}a=a[o]?a:[a];var f=b&&b.call,j=f?b:d,m=f?a.join(""):b,n=a.length;return c(function(){u(a,function(a){if(l[a])return m&&(h[m]=1),l[a]==2&&q();l[a]=1,m&&(h[m]=1),w(!e.test(a)&&k?k+a+".js":a,q)})},0),v}function w(a,c){var e=b.createElement("script"),f=n;e.onload=e.onerror=e[s]=function(){if(e[q]&&!/^c|loade/.test(e[q])||f)return;e.onload=e[s]=null,f=1,l[a]=2,c()},e.async=1,e.src=a,d.insertBefore(e,d.firstChild)}var a=this,b=document,c=setTimeout,d=b.getElementsByTagName("head")[0],e=/^https?:\/\//,f=a.$script,g={},h={},i={},k,l={},m="string",n=!1,o="push",p="DOMContentLoaded",q="readyState",r="addEventListener",s="onreadystatechange";return!b[q]&&b[r]&&(b[r](p,function x(){b.removeEventListener(p,x,n),b[q]="complete"},n),b[q]="loading"),v.get=w,v.order=function(a,b,c){(function d(e){e=a.shift(),a.length?v(e,d):v(e,b,c)})()},v.path=function(a){k=a},v.ready=function(a,b,c){a=a[o]?a:[a];var d=[];return!u(a,function(a){g[a]||d[o](a)})&&t(a,function(a){return g[a]})?b():!function(a){i[a]=i[a]||[],i[a][o](b),c&&c(d)}(a.join("|")),v},v.noConflict=function(){return a.$script=f,this},v})