2011-02-14 16 views
42

Czy można wybrać elementy w jQuery za pomocą ich atrybutów HTML5 data (na przykład wszystkie <div> z data-role='footer')?Wybieranie elementów za pomocą atrybutu danych HTML5 w jQuery

+0

Tak, możesz http://api.jquery.com/attribute-equals-selector/ –

+0

@Sep - To nie jest "jak to zrobiłby jQuery", to przekaże je do 'querySelectorAll () 'call, jeśli to możliwe (i będzie to z selektorem atrybutów tutaj), nie przechodź przez t sam DOM ... chyba że nie ma innej drogi (np. używany niestandardowy selektor inny niż CSS) –

Odpowiedz

83

Możesz wybrać na atrybucie data- jak każdy inny atrybut ... używając attribute selector. W tym przypadku chcesz attribute-equals selector, tak:

$("div[data-role='footer']") 

Są one traktowane specjalnie w konsumpcji przez jQuery, na przykład pozwalając .data() pobrać z nich poprawne pisanie ... ale jeśli chodzi o przechodzenie DOM, są one tylko kolejnym atrybutem, więc pomyśl o nich jako o tym, pisząc selektory.

Powiązane problemy