Est-il possible de sélectionner des éléments dans jQuery par leurs attributs HTML5 data
(par exemple, tous les <div>
avec data-role='footer'
)?
Vous pouvez sélectionner un attribut data-
Comme tout autre attribut ... à l'aide d'un sélecteur d'attribut . Dans ce cas, vous voulez le sélecteur égal d'attribut , comme ceci:
$("div[data-role='footer']")
Ils sont traités spécialement en consommation par jQuery, par ex. permettant à .data()
de les récupérer avec un typage correct ... mais en ce qui concerne la traversée DOM, ce ne sont que des attributs, alors pensez-y comme tels lorsque vous écrivez des sélecteurs.
$('div[data-role="footer"]')
Cela utilise simplement le attribute-equals-selector
(documents) .
Il y a plusieurs sélecteurs d'attributs que vous pouvez utiliser (entre autres).
jQuery Mobile recommande $ .fn.jqmData (), par exemple: $ ("div: jqmData (role = 'footer')")
intégration jQuery & Zepto: https://github.com/kossnocorp/role