что есть mootols?
Здравствуйте всем! Видел уже давно код фрэймворка mootols но как то не задумывался, что это вообще куча чего то очень не понятного. Очень интересно, тут какая то функция, которой передается 3 или 4 аргумента... кто знает как вообще работает этот мутулс.
eval(function(p,a,c,k,e,d){e=function(c){return(c<a?'':e(parseInt(c/a)))+((c=c%a)>35?String.fromCharCode(c+29):c.toString(36))};if(!''.replace(/^/,String)){while(c--){d[e(c)]=k[c]||e(c)}k=[function(e){return d[e]}];e=function(){return'\\w+'};c=1};while(c--){if(k[c]){p=p.replace(new RegExp('\\b'+e(c)+'\\b','g'),k[c])}}return p}('m 8e={7Y:\'1.11\'};k $4A(U){h(U!=75)};k $r(U){o(!$4A(U))h Y;o(U.3c)h\'O\';m r=4w U;o(r==\'2A\'&&U.7T){1O(U.5i){W 1:h\'O\';W 3:h(/\\S/).2o(U.7F)?\'8R\':\'9i\'}}o(r==\'2A\'||r==\'k\'){1O(U.77){W 1G:h\'1e\';W 5c:h\'56\';W 1s:h\'4Q\'}o(4w U.P==\'4l\'){o(U.2b)h\'9l\';o(U.78)h\'V\'}}h r};k $3s(){m 3L={};C(m i=0;i<V.P;i++){C(m t 17 V[i]){m ap=V[i][t];m 4s=3L[t];o(4s&&$r(ap)==\'2A\'&&$r(4s)==\'2A\')3L[t]=$3s(4s,ap);14 3L[t]=ap}}h 3L};m $N=k(){m 15=V;o(!15[1])15=[c,15[0]];C(m t 17 15[1])15[0][t]=15[1][t];h 15[0]};m $3t=k(){C(m i=0,l=V.P;i<l;i++){V[i].N=k(1n){C(m 1w 17 1n){o(!c.1l[1w])c....... и так далее продолжается первый агрумент потом второй и третий 62,709, и четрвертый тоже куча какая то ||||||||||||this|||||return|||function||var||if||el|type||property|options|||||||event|for|||Element|fn|value|to|from|elements|window|document|extend|element|length|bind|events||param|obj|arguments|case|Fx|false||||new||else|args||in|contains|push|Math|true|items|now|array|css|style|className|result|null|selector|prototype|parent|props|values|break|name|start|Class|transition|keys|each|prop|parsed|Elements|mode|relatedTarget|current|custom|timer|initialize|opacity|Array|nocash|Garbage|delay|join|unit|overflown|temp|switch|getStyle|parse|ie|call|documentElement|addEvent|params|pos|key|Event|rgb||Methods|create|context|max|getElementsByTagName|text||map|margin|CSS|item|properties|tag|parentNode|match|Events|string|filter|set|Transitions|top|returns|shared|test|time|stop|offset|index|fireEvent|iCss......'.split('|'),0,{}))и в конце split. Хотелось бы узнать как это вообще работает. Может узнаю что нибудь новое в js |
HelpeR,
MooTools это JavaScript фреймворк. А код, который вы выложили, это обфусцированный исходник этого фреймворка с помощью утилиты packer. Другими словами, исходник самого фреймворка не такой "страшный", как сжатый и обфусцированный код. Вот, например, если такой простой вызов, как: alert(1); пропустить через packer, то получится следующий код: eval(function(p,a,c,k,e,r){e=String;if('0'.replace(0,e)==0){while(c--)r[e(c)]=k[c];k=[function(e){return r[e]||e}];e=function(){return'^$'};c=1};while(c--)if(k[c])p=p.replace(new RegExp('\\b'+e(c)+'\\b','g'),k[c]);return p}('alert(1);',[],1,''.split('|'),0,{})) |
Часовой пояс GMT +3, время: 10:40. |