/* * NetEase Javascript Library v1.2.5 * 网易Javascript书屋 v1.2.5 * Modified from * 按照[jRaiser Javascript Library]修改 * jraiser的地址:http://code.google.com/p/jraiser/ * Copyright 2008-2010 Heero.Luo (http://heeroluo.net/) * 著作权 2008-2010 Heero.Luo(貌似是“希罗”的意思,Heero是高达系列某人名字的一部分)然后是他的个人主页 * 这个js文件是我从网易游戏美女频道主页得到的,得到时貌似这位罗先生已经来开网易一段时间了,网易还在思念这位老兄?个人主页都不删除。 * licensed under MIT license * 得到MIT许可证(MIT麻省理工大学缩写) * Creation date: 2008/2/6 * 创建时间:2008/2/6 * Modified date: 2010/8/4 * 修改时间:2010/8/4 * * 接下来开始一步一步解析这个js文件 * 讲解:刘建 * 毕业院校:家里蹲大学低能班 */ (function(R,f) {var b="1.2.5 Build 201008041550",_="NTES"; //这个变量b保存的是创建时间,NTES:网易在纳斯达克的名字,属于广告性东西 if(R[_]&&R[_].version>=b)return; var A=R.$,c=R.document,T=R[_]=R.$=function($,_) //这句把R的一些变量赋值给字母,应该是简化的作用 { if(!$)return $; "string"===typeof $&&($=L($,_));return M($)}; //如果$的类型是字符串 T.one=function($,_){return M(L($,_,1))}; T.all=function($,_){return M(L($,_,0))}; function L(_,B,$){var A=s.exec(_,B||c);if($!==f) if(A) { var C=T.util.isArray(A); if(1===$&&C)return A[0]; else if(0===$&&!C)return[A]} else if(0===$)return[];return A} function M(A){if(A&&!A[_]) if(A.nodeType){if("unknown"!==typeof A.getAttribute) for(var $ in T.element)f===A[$]&&(A[$]=T.element[$])} else A=T.util.extend(T.util.toArray(A),T.element);return A } T.version=b;T.resume=function(){A=R.$;R.$=R[_]=T;return T};T.retire=function(){R.$=A;return A}; var O=c.createElement("div");O.innerHTML="<p class='TEST'></p>"; var s={SPACE:/\s*([\s>~+,])\s*/g,ISSIMPLE:/^#?[\w\u00c0-\uFFFF_-]+$/,IMPLIEDALL:/([>\s~\+,]|^)([#\.\[:])/g,ATTRVALUES:/=(["'])([^'"]*)\1]/g,ATTR:/\[\s*([\w\u00c0-\uFFFF_-]+)\s*(?:(\S?\=)\s*(.*?))?\s*\]/g,PSEUDOSEQ:/\(([^\(\)]*)\)$/g,BEGINIDAPART:/^(?:\*#([\w\u00c0-\uFFFF_-]+))/,STANDARD:/^[>\s~\+:]/,STREAM:/[#\.>\s\[\]:~\+]+|[^#\.>\s\[\]:~\+]+/g,ISINT:/^\d+$/,enableQuerySelector:O.querySelectorAll&&O.querySelectorAll(".TEST").length>0,tempAttrValues:[],tempAttrs:[],idName:_+"UniqueId",id:0,exec:function($,I){var _,G,E,C,B,J,K,F,H,L,D=this;$=$.trim(); if(""===$)return; if(D.ISSIMPLE.test($)) if(0===$.indexOf("#")&&typeof I.getElementById!=="undefined")return D.getElemById(I,$.substr(1)); else if(typeof I.getElementsByTagName!=="undefined")return T.util.toArray(I.getElementsByTagName($)); if(D.enableQuerySelector&&I.nodeType) {