Seletores CSS em JavaScript com todas as tags H
-
05-07-2019 - |
Pergunta
Usando biblioteca Prototype JS, eu quero selecionar todos os elementos link criança ( A marcas), independentemente de seus pais é: H1 , H2 , H3 , H4 , ou H5 (etc) com um simples
Assim, o simples, mas muito longe, para fazer isso é:
$('page').select('h1 > a, h2 > a, h3 > a, h4 > a, h5 > a')
Eu acho que eu estou procurando uma propriedade wild-card, como h *, que não existe.
Talvez o exemplo acima é o caminho a percorrer, mas estou esperando há um mais simples, mais concisa e eficiente de fazer isso.
Dicas apreciado.
Solução
De acordo com Fabien Ménager comentário à pergunta inicial, parece que não há um seletor CSS simples que posso usar além do que eu já tenho.
$('page').select('h1 > a, h2 > a, h3 > a, h4 > a, h5 > a')
Embora existam outras opções se eu quiser ser programático sobre ele, ou esvaziar JQuery (que não é uma opção para mim) Eu estou procurando especificamente uma regra CSS.
Obrigado a todos que tentou ajuda.
Outras dicas
Usando jQuery:
$(":header a")
http://docs.jquery.com/Selectors/header diz:
:. Cabeçalho Combina todos os elementos que são cabeçalhos, como H1, H2, H3 e assim por diante
Adiciona uma cor de fundo e de texto para todos os cabeçalhos na página.
$(":header").css({ background:'#CCC', color:'blue' });
tem uma resposta para isso os devs protótipo. Estes são os melhores e únicas soluções, pelo menos por agora:
$$('h1 > a, h2 > a, h3 > a, h4 > a, h5 > a, h6 > a')
$('page').select('h1 > a, h2 > a, h3 > a, h4 > a, h5 > a')
No entanto, a próxima versão do Prototype vai deixar você escolher um motor de seletor e será o padrão para Sizzle . O :header
pseudo-selector é realmente parte do Sizzle por isso estará disponível em versões futuras do protótipo (contanto que você escolher chiar como seu mecanismo selector). Eu acho que não foi incluído anteriormente, pois não é parte de qualquer especificação.