2011-03-24 21 views
5

Belli bir src'si olmayan tüm görüntüleri döndürmek için jQuery seçici kullanmaya çalışıyorum.jQuery image src selector

$('img[src!="/img/none.png"]') 

Bu görüntüler performans uğruna ben in/out solmaz olanlardan onları dışlamak için çalışıyorum, bu yüzden zaten şeffaf. Ama sorgu hala src ile görüntüleri döndürür = /img/none.png

Ben

$('img[src="/img/none.png"]') 

yapmak ancak artık src = /img/none.png sadece görüntüleri geri dönecektir. Yani öznitelik değil eşitlik bozuk gibi görünüyor?

İlgili belgeler http://api.jquery.com/attribute-not-equal-selector/

cevap

10

Bu işe yaramazsa, src yorumlanmaz içinde bulunduğunuz tarayıcıya bağlı

$('img:not([src$="/img/none.png"])'); 

deneyin

$('img:not([src="/img/none.png"])'); 

deneyin belirlediğiniz gibi, mutlak URI olarak yorumlanır, böylece tarayıcınız http://www.yoursite.com/img/none.png olduğunu düşünür. JQuery'nin src'yi nasıl okuduğundan emin değilim, böylece mutlak URI'yi alabilir.

+0

ardından jQuery '$ =' mantıklı bir çözüm gibi görünüyor için ... – JCOC611

+0

+1 tüm görüntüleri dönecekti. – karim79

+0

@JCOC - İkinci snippet, [attribute-with-with with selector] (http://api.jquery.com/attribute-ends-with-selector/) kullanır, böylece "ile bitmeyen görüntüler" yazar img/none.png '". –

0

:not selector'u kullanmayı deneyin.

$('img:not([src="/img/none.png"])') 

Eğer başka bir yanıt belirtildiği gibi "attribute ends with" seçici kullanmak isteyebilirsiniz görüntü için göreli veya mutlak yolları bir karışımını kullanıyorsanız. Geçen beyanı nedeni ise bunlar bir belirten neyse eşit olmadıklarından

$('img:not([src$="/img/none.png"])')