jQuery對象訪問 jquery: “3.0.0-pre”,
1.each(callback):以每一個匹配的元素作爲上下文來執行一個函數
1.jQuery.each(obj,function(a,b){})
如果這樣寫,會直接調用jQuery.each的方法;
2.jQuery(obj).each(function(a,b){})
如果這樣寫,會先進入主函數jQuery(selector,[context])然後調用
jQuery.fn=jQuery.prototype={each: function( callback ) {
return jQuery.each( this, callback );
}}
each: function( obj, callback ) {
var length, i = 0;
if ( isArrayLike( obj ) ) {
length = obj.length;
for ( ; i < length; i++ ) {
if ( callback.call( obj[ i ], i, obj[ i ] ) === false ) {
break;
}
}
} else {
for ( i in obj ) {
if ( callback.call( obj[ i ], i, obj[ i ] ) === false ) {
break;
}
}
}
return obj;
}
2.jQuery(selector).get(num)
:取得其中一個匹配的元素;
get: function( num ) {
return num != null ?
// Return just the one element from the set
( num < 0 ? this[ num + this.length ] : this[ num ] ) :
// Return all the elements in a clean array
slice.call( this );//[].slice.call(this)
}
3.jQuery(selector).index(elem)
:搜索匹配的元素,並返回相應元素的索引值。
===============數據的緩存
1.jQuery(ele).data(key,value)
與jQuery.data(elem,key,value)
的區別。
var e = $("#div");
var w = $("#div");
e.data('man','eeeeee');
w.data('man','wwwww');
console.log(e.data('man'))//'wwwww'
$.data(e,'man','eeeeeeee');
$.data(w,'man','wwwwwwww');
console.log($.data(e,'man'))//eeeeeeee
//在同一個元素上緩存數據時,第一種方法會覆蓋前面寫的,第二種不會;
2.jQuery(elem).removeData(name[list])
和jQuery.removeData(elem,name[list]);