function $(){ if(arguments.length == 0){ return false; }else if(arguments.length == 1){ return _$(arguments[0]); }else{ var arr = []; for(var i = 0; i < arguments.length; i++){ var node = _$(arguments[i]); if(node){ arr.push(node); } } if(arr.length){ return arr; }else{ return false; } } } function _$(arg){ if(typeof arg == "string"){ return document.getElementById(arg); }else if(typeof arg == "object" && typeof arg.nodeType != "undefined"){ return arg; }else{ return false; } } function $T(tName, parent){ parent = parent ? parent : document; return parent.getElementsByTagName(tName); } function $F(ipt){ ipt = $(ipt); var node_names = ["SELECT", "INPUT", "TEXTAREA"]; var node_name = ""; var types = []; var ret = true; for(var i = 0; i < node_names.length; i++){ if(ipt.nodeName == node_names[i]){ node_name = node_names[i]; } } if(!node_name) return; return $F[node_name.toLowerCase()](ipt); } $F.select = function(objSel){ if(!!objSel.value){ return objSel.value; }else{ var ops = $T("OPTION", objSel); return ops[objSel.selectedIndex].innerText; } }; $F.textarea = function(objTArea){ return objTArea.value; }; $F.input = function(objIpt){ return objIpt.value; }; function $C(className, parent){ parent = (parent) ? parent : document; className = new RegExp('^' + className + '$'); var arr = []; var collection = $T("*", parent); for(var i = 0; i < collection.length; i++){ var classes = collection[i].className.split(" "); for(var j = 0; j < classes.length; j++){ if(classes[j].match(className)){ arr.push(collection[i]); continue; } } } if(arr.length != 0){ return arr; }else{ return false; } } function $S(cssSelector){ var arr = cssSelector.split(" "); for(var i = 0; i < arr.length; i++){ var type = "_tag"; if(arr[i].charAt(0) == "."){ type = "_class"; }else if(arr[i].charAt(0) == "#"){ type = "_id"; } $S[type](arr[i]); } } $S._tag = function(){}; $S._class = function(){}; $S._id = function(){}; Function.prototype.bind = function(){ var _method = this; var _object = arguments[0]; var _args = []; for(var i = 1; i < arguments.length; i++){ _args.push(arguments[i]); } return function(){ return _method.apply(_object, _args); } } Array.prototype.each = function(iterator){ for(var i = 0; i < this.length; i++){ iterator(this[i], i); } }