jQuery1.6 使用方法1,想要学习jquery的朋友可以参考下。
error: function( msg ) {//声明错误 throw msg; }, parseJSON: function( data ) {//把字符串转换成json格式 if ( typeof data !== "string" || !data ) {//首先判断是否存在,是否为字符串 return null; } data = jQuery.trim( data );//去掉前后空白 if ( window.JSON && window.JSON.parse ) {//高级版本有原生JSON转换函数window.JSON return window.JSON.parse( data ); } if ( rvalidchars.test( data.replace( rvalidescape, "@" )// .replace( rvalidtokens, "]" )// .replace( rvalidbraces, "")) ) {//进行简单的检验,对{true:1},{"a",{}}....都通过 //rvalidchars = /^[\],:{}\s]*$/, //rvalidescape = /\\(?:["\\\/bfnrt]|u[0-9a-fA-F]{4})/g,u[0-9a-fA-F]{4}匹配中英文和转义符 //rvalidtokens = /"[^"\\\n\r]*"|true|false|null|-?\d+(?:\.\d*)?(?:[eE][+\-]?\d+)?/g,//匹配字符串中不含有“\\”、“\n”、“\r”、布尔值、null、数字 //rvalidbraces = /(?:^|:|,)(?:\s*\[)+/g,匹配(开始为空或者:或者,)(后面跟随零或多个空格,最后跟随[) 如 [、: [、,[、, [等等 return (new Function( "return " + data ))(); } jQuery.error( "Invalid JSON: " + data ); }, parseXML: function( data , xml , tmp ) {不明白传入xml tmp用处 if ( window.DOMParser ) { // 标准 //DOMParser 对象解析 XML 文本并返回一个 XML Document 对象。要使用 DOMParser,使用不带参数的构造函数来实例化它,然后调用其 //parseFromString() 方法: tmp = new DOMParser(); xml = tmp.parseFromString( data , "text/xml" ); } else { // IE xml = new ActiveXObject( "Microsoft.XMLDOM" ); xml.async = "false"; xml.loadXML( data ); } tmp = xml.documentElement; if ( ! tmp || ! tmp.nodeName || tmp.nodeName === "parsererror" ) {//判断返回的结果是否为空,是否不是节点,是否报错 jQuery.error( "Invalid XML: " + data ); } return xml; } globalEval: function( data ) {//把data变为可执行 if ( data && rnotwhite.test( data ) ) {//检查是否存在,是否不为空 ( window.execScript || function( data ) { window[ "eval" ].call( window, data );//window.eval.call(window,data)这种方式,在某些情况下IE下也不能改变上下环境所以只能针对IE使用window.execScript,其他流浪器使用window.eval.call(window,data); } )( data ); } }, nodeName: function( elem, name ) { return elem.nodeName && elem.nodeName.toUpperCase() === name.toUpperCase();//判断是否是节点,节点名默认是大写,为了保证能够正确判断,都转化成相同格式(大写) }, each: function( object, callback, args ) { var name, i = 0, length = object.length,//window,String,Function,Array类型的不为undefined;.. isObj = length === undefined || jQuery.isFunction( object );//主要为了区分开对象和数组 if ( args ) {//如果没有传入参数,会用默认的名和值来作为参数,如果有参数,就使用传入的参数 if ( isObj ) { for ( name in object ) { if ( callback.apply( object[ name ], args ) === false ) { break; } } } else { for ( ; i < length; ) { if ( callback.apply( object[ i++ ], args ) === false ) { break; } } } } else {//如果没有传入参数, if ( isObj ) { for ( name in object ) {// object[ name ]值作为当前对象,把名和值作为参数 if ( callback.call( object[ name ], name, object[ name ] ) === false ) {//判断回调函数返回值,决定是否继续循环 break; } } } else { for ( ; i < length; ) {//object[ i ]值作为当前对象,把名(i为先后顺序)和值作为参数 if ( callback.call( object[ i ], i, object[ i++ ] ) === false ) {//判断回调函数返回值,决定是否继续循环 break; } } } } return object; }, trim: trim ?//检测是否有原生trim方法,如果参数text !=就进行截取前后空白,否则返回空,没有原生trim的话,强制转换为字符串再进行正则替换,否则报错,使用正则替换(trimLeft = /^\s+/,//匹配左空白,trimRight = /\s+$/,//匹配右空白), function( text ) { return text == null ? "" : trim.call( text ); } : function( text ) { return text == null ? "" : text.toString().replace( trimLeft, "" ).replace( trimRight, "" ); }, |