jquery選擇器返回數組處理


有很多類名為classNameEvent的元素。

var eventArr=$(".eventNameClass");
console.log(eventArr);
console.log('eventArr '+eventArr[0].text());
eventArr[0].click(function(){ });

以為$返回的是一個數組,eventArr[0]是第1個元素(jquery),誰知報錯:

eventArr[0] htmlObject 沒有方法text();

說明eventArr[0]已經變成了dom元素,要想使用text方法,必須重新包裝.

$(eventArr[0]).text();

 $(dom).toArray()將所有DOM元素恢復成數組[不常用]

解釋: 把jQuery集合中所有DOM元素恢復成一個數組。並不常用的方法, 個人甚至覺得它和$.makeArray一樣多余.

  1. var _toArr=$('h2').toArray();  
  2. alert('h2元素集合恢復后的數據類型是: '+_toArr.constructor.name); 

JQUERY判斷對象是否存在,我們用js判斷dom是否存在直接:

if( document.getElementById("wrap") )

就能獲取,但是如果是jquery就不能直接用:

if( jQuery('wrap') )

因為jquery選擇器返回的永遠是一個數組對象,若未找到指定元素,就會返回一個空的數組對象,所以判斷dom是否存在就用繞一點彎:

if( jQuery('wrap').length > 0 )

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM