2012-05-11 12 views
15

Ho provato questo di seguito. Penso che l'oggetto restituito da $ ("div.tab_select") [0] non sia un oggetto jQuery, ma non posso nemmeno usare il metodo javascript puro.selettore jquery per div con classe

C'è un modo per renderlo jQuery Object? per esempio $ ($ ("div.tab_select") [0]) .. so che questo è sciocco;

Grazie per la lettura.

var tmp = $("div.tab_select")[0]; 
alert(tmp); //This gives me HTMLDivElement collectly. But I can't use any of javascript.. 

alert(tmp.nodeName); //But this give me error "Uncaught TypeError: Cannot read property 'nodeName' of undefined" 

tmp.hide(); //Neither, I can't use this. 
+2

Prova 'var tmp = $ ("div.tab_select: prima");' o 'var tmp = $ ("div.tab_select: eq (0)"); ' – j08691

risposta

24
// all divs with tab_select class 
$('div.tab_select') 

// first div with tab_select class 
$('div.tab_select:first') 

// or 
$('div.tab_select').first() 

// or 
$('div.tab_select:eq(0)') 

// or 
$('div.tab_select').eq(0) 
1

Se si desidera un uso oggetto jQuery var tmp = $("div.tab_select:first") invece.

var tmp = $("div.tab_select")[0] restituirà l'elemento DOM (se esiste)

1

Basta fare $(tmp). [0] ti fornisce l'elemento HTML non l'istanza di JQuery.

0

Ho letto da qualche parte che i selettori di CSS sono più veloci.

$('div.tab_select:nth-child(n)').<method> 

Ecco l'e.g.