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 CSS Selector Regra (em oposição a uma maior JS, como looping etc).

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.

Foi útil?

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.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top