2012-05-28 20 views
6

Bazen css'yi test etmek için jquery'yi kullanırım. Ve sık sık ben $('.topclass div') gibi bir şey yazıp geriJQuery CSS Seçici e.fn.e.init

e.fn.e.init[125] 

bir javascript object içeren düğümler olarak alırsınız

(Chrome Web Geliştirici konsolunda) basit seçici kullanacağız. (Genellikle onun karmaşık bir seçici ama bazen basit).

Bunu neden aldım? Bir etiket eksik mi yoksa seçicim yanlış mı?

Düzenleme: html temelde div'leri yuvalanır (onun alt öğeleri de div'leri alma çünkü olabilir?)

cevap

5

Bu sizin seçiminiz çok fazla eşleşmeleri içeren anlamına gelir ve geliştirici araçları konsolunda kendi temsilini kısaltmak.

konsolunda bu deneyin: a incelemek için çalışırsanız, ["foobar", "foobar", "foobar", "foobar", "foobar", "foobar", "foobar", "foobar", "foobar", "foobar"] göreceksiniz

var a = [] 
for (var i = 0; i < 10; i++) { a.push('foobar'); } 

. Şimdi, biraz daha unsurları ekleyin:

Şimdi
for (var i = 0; i < 100; i++) { a.push('foobar'); } 

bunu incelemek çalışırsanız, sen Array[110] göreceksiniz.

Doğal olarak, seçicinizin yanlış olduğu anlamına gelmez, ancak daha az öğe bekliyorsanız, bu yanlış olabilir.

+0

Evet, görüyorum ki onu $ ('div') olarak değiştirdim ve daha yüksek bir sayı aldım, bu yüzden olmalı. Seçicim açıkça yanlış – Akshat