jQuery1.6 使用方法一
error: function( msg ) {//聲明錯(cuò)誤
throw msg;
},
parseJSON: function( data ) {//把字符串轉(zhuǎn)換成json格式
if ( typeof data !== "string" || !data ) {//首先判斷是否存在,是否為字符串
return null;
}
data = jQuery.trim( data );//去掉前后空白
if ( window.JSON && window.JSON.parse ) {//高級(jí)版本有原生JSON轉(zhuǎn)換函數(shù)window.JSON
return window.JSON.parse( data );
}
if ( rvalidchars.test( data.replace( rvalidescape, "@" )//
.replace( rvalidtokens, "]" )//
.replace( rvalidbraces, "")) ) {//進(jìn)行簡(jiǎn)單的檢驗(yàn),對(duì){true:1},{"a",{}}....都通過(guò)
//rvalidchars = /^[\],:{}\s]*$/,
//rvalidescape = /\\(?:["\\\/bfnrt]|u[0-9a-fA-F]{4})/g,u[0-9a-fA-F]{4}匹配中英文和轉(zhuǎn)義符
//rvalidtokens = /"[^"\\\n\r]*"|true|false|null|-?\d+(?:\.\d*)?(?:[eE][+\-]?\d+)?/g,//匹配字符串中不含有“\\”、“\n”、“\r”、布爾值、null、數(shù)字
//rvalidbraces = /(?:^|:|,)(?:\s*\[)+/g,匹配(開(kāi)始為空或者:或者,)(后面跟隨零或多個(gè)空格,最后跟隨[) 如 [、: [、,[、, [等等
return (new Function( "return " + data ))();
}
jQuery.error( "Invalid JSON: " + data );
},
parseXML: function( data , xml , tmp ) {不明白傳入xml tmp用處
if ( window.DOMParser ) { // 標(biāo)準(zhǔn)
//DOMParser 對(duì)象解析 XML 文本并返回一個(gè) XML Document 對(duì)象。要使用 DOMParser,使用不帶參數(shù)的構(gòu)造函數(shù)來(lái)實(shí)例化它,然后調(diào)用其 //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" ) {//判斷返回的結(jié)果是否為空,是否不是節(jié)點(diǎn),是否報(bào)錯(cuò)
jQuery.error( "Invalid XML: " + data );
}
return xml;
}
globalEval: function( data ) {//把data變?yōu)榭蓤?zhí)行
if ( data && rnotwhite.test( data ) ) {//檢查是否存在,是否不為空
( window.execScript || function( data ) {
window[ "eval" ].call( window, data );//window.eval.call(window,data)這種方式,在某些情況下IE下也不能改變上下環(huán)境所以只能針對(duì)IE使用window.execScript,其他流浪器使用window.eval.call(window,data);
} )( data );
}
},
nodeName: function( elem, name ) {
return elem.nodeName && elem.nodeName.toUpperCase() === name.toUpperCase();//判斷是否是節(jié)點(diǎn),節(jié)點(diǎn)名默認(rèn)是大寫(xiě),為了保證能夠正確判斷,都轉(zhuǎn)化成相同格式(大寫(xiě))
},
each: function( object, callback, args ) {
var name, i = 0,
length = object.length,//window,String,Function,Array類(lèi)型的不為undefined;..
isObj = length === undefined || jQuery.isFunction( object );//主要為了區(qū)分開(kāi)對(duì)象和數(shù)組
if ( args ) {//如果沒(méi)有傳入?yún)?shù),會(huì)用默認(rèn)的名和值來(lái)作為參數(shù),如果有參數(shù),就使用傳入的參數(shù)
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 {//如果沒(méi)有傳入?yún)?shù),
if ( isObj ) {
for ( name in object ) {// object[ name ]值作為當(dāng)前對(duì)象,把名和值作為參數(shù)
if ( callback.call( object[ name ], name, object[ name ] ) === false ) {//判斷回調(diào)函數(shù)返回值,決定是否繼續(xù)循環(huán)
break;
}
}
} else {
for ( ; i < length; ) {//object[ i ]值作為當(dāng)前對(duì)象,把名(i為先后順序)和值作為參數(shù)
if ( callback.call( object[ i ], i, object[ i++ ] ) === false ) {//判斷回調(diào)函數(shù)返回值,決定是否繼續(xù)循環(huán)
break;
}
}
}
}
return object;
},
trim: trim ?//檢測(cè)是否有原生trim方法,如果參數(shù)text !=就進(jìn)行截取前后空白,否則返回空,沒(méi)有原生trim的話(huà),強(qiáng)制轉(zhuǎn)換為字符串再進(jìn)行正則替換,否則報(bào)錯(cuò),使用正則替換(trimLeft = /^\s+/,//匹配左空白,trimRight = /\s+$/,//匹配右空白),
function( text ) {
return text == null ?
"" :
trim.call( text );
} :
function( text ) {
return text == null ?
"" :
text.toString().replace( trimLeft, "" ).replace( trimRight, "" );
},
相關(guān)文章
使用jquery給指定的table動(dòng)態(tài)添加一行、刪除一行
今天在項(xiàng)目中,剛好用到給指定的table添加一行、刪除一行,就直接找google,搜出來(lái)的東西不盡如人意,不是功能不好就是千篇一律,簡(jiǎn)直浪費(fèi)時(shí)間還不討好,于是乎就自己動(dòng)手封裝個(gè),現(xiàn)就把代碼分享出來(lái),避免大伙重復(fù)造輪子,如有問(wèn)題歡迎大伙拍磚指正,千萬(wàn)可別人身攻擊2016-10-10六款幫助你實(shí)現(xiàn)驚艷視差滾動(dòng)效果的jQuery插件
視差(Parallax)是指從不同的點(diǎn)看一個(gè)物體時(shí)形成的視覺(jué)差異,這個(gè)名詞是源自希臘文的παράλλαξις (parallaxis),意思是改變2012-09-09兩個(gè)多選select(multiple左右)添加、刪除選項(xiàng)和取值實(shí)例
這篇文章主要介紹了兩個(gè)多選select(multiple左右)添加、刪除選項(xiàng)和取值實(shí)例,使用jquery實(shí)現(xiàn),需要的朋友可以參考下2014-05-05最新最熱最實(shí)用的15個(gè)jQuery插件匯總
本文給大家匯總介紹了2015年7月最新發(fā)布的最熱最實(shí)用的15款jQuery插件,都有著非常炫酷的效果,十分的實(shí)用,這里推薦給大家。2015-07-07Jquery網(wǎng)頁(yè)內(nèi)滑動(dòng)緩沖導(dǎo)航的實(shí)現(xiàn)代碼
這篇文章主要介紹了Jquery網(wǎng)頁(yè)內(nèi)滑動(dòng)緩沖導(dǎo)航的實(shí)現(xiàn)代碼,實(shí)現(xiàn)滑動(dòng)緩沖的方式實(shí)現(xiàn)頁(yè)內(nèi)導(dǎo)航,用戶(hù)體驗(yàn)大大提升需要的朋友可以參考下2015-04-04