Seletores CSS com jQuery

Postado por: Pedro Rogério em

O Framework JavaScript jQuery nos oferece uma grande facilidade para manipular css na página de forma dinâmica. A única coisa que precisamos aprender é como acessar esses distintos elementos em nossa página web. Basta ter um pouco de conhecimento dos seletores que o jQuery disponibiliza: Seletores CSS, XPath, de formulário, mas os que você irá mais utilizar no seu dia-a-dia são os seguintes:

Elemento: foo

Todos os elementos que são do tipo foo. Exemplo:

$("div")

Seleciona todas as divs do documento HTML.

ID: #meuid

O elemento cujo o ID seja igual a #meuid. Exemplo:

$("#meuid")

Lembrem-se que os IDs nas páginas devem ser únicos, caso sejam repetidos, ele só irá pegar o primeiro elemento na página com ID citado.

Class: .minhaclasse

Seleciona todos os elementos que tenham a classe “minhaclasse”. Exemplo:

$(".minhaclasse") //Todos os elementos com a classe .minhaclasse
$("p.minhaclasse") //Todas as tags p com a classe .minhaclasse
$("div.minhaclasse") //Todas as divs com a classe .minhaclasse

Descendentes: E F

Seleciona todos os elementos coincidentes com F que sejam descendentes de E. Exemplo:

$("#container p") //Seleciona todos os elementos p que sejam descendentes de um elemento cujo o id seja #container

Filhos diretos: E > F

Seleciona todos os elementos coincidentes com F que sejam filhos diretos de E. Exemplo:

$("#nav > li") //Seleciona todas as tags li's que sejam filhos diretos de um elemento com o id igual a #nav

Seletores irmão: E + F

Seleciona todos os elementos coincidentes com F que venham imediatamente depois de E. Exemplo:

$("label + input") //Seleciona todos os inputs que tiverem um label antes

Seletores irmão de combinação: E ~ F

Seleciona todos os elementos coincidentes com F que estão no mesmo nível e após E. Exemplo:

$("h2 ~ p") //Seleciona o elemento p que esteja no mesmo nível e após o h2

Pseudo seletores

:first

Seleciona apenas o primeiro li filho do elemento que contenha o id #nav:

$("#nav li:first")
$("#nav li:first-child") // Uma outra forma alternativa que também funciona

:last-child

Seleciona apenas o último li filho do elemento que contenha o id #nav:

$("#nav li:last")
$("#nav li:last-child") // Uma outra forma alternativa que também funciona

:odd

Seleciona todos os td’s que sejam pares na árvore do HTML:

$("td:odd")

:even

Seleciona todos os td’s que sejam ímpares na árvore do HTML:

$("td:even")

:text

Seleciona todos os inputs que sejam do tipo texto:

$(":text")

Ampliando os seletores

No guia ofcial do jQuery, você pode encontrar mais seletores do tipo:

css( name )

Devolve o valor do estilo de uma propriedade CSS para o primeiro elemento encontrado. Se atentem ao seguinte HTML:

<p style="font-weight: bold;">Texto de exemplo</p>

O JavaScript fica da seguinte forma:

$(document).ready(function() {
      var fonte = $("p").css("font-weight");
      alert(fonte);
});

Retorna um alert com o texto “bold”

css( properties )

Estabele propriedades específicadas a todos os elementos coincidentes. Útil quando devemos estabelecer várias propriedades:

<div>Texto de exemplo</div>

O JavaScript fica da seguinte forma:

$(document).ready(function() {
      $("div").css({ color: "#FFFFFF", background: "#000000" });
});

Aqui definimos que a cor do texto será branco e o fundo preto.

css( name, value )

Estabelece um valor a propriedade especificada em todos os elementos coincidentes. Muito semelhante a regra anterior, seu uso seria:

$(document).ready(function() {
      $("p").css("color","red");
});

height()

Obtém a altura em px do primeiro elemento coincidente:

$("#div1").height();

Nos retornaria a altura em px do elemento cujo id seja #div1.

width()

Obtém a largura em px do primeiro elemento coincidente:

$("#div1").width();

Nos retornaria a largura em px do elemento cujo id seja #div1.

Em um exemplo muito simples, vamos alterar a cor de fundo da página ao clicar em um elemento. Se atentem ao seguinte código:

<html>
<head>
<script src="jquery.js" type="text/javascript"></script>
<script type="text/javascript">
$(document).ready(function () {
    $("p").click(function () {
          alert("OK");
          $("body").css("background","red");
    });
});
</script>
</head>
<body>
    <p>Clique aqui para alterar o fundo da página</p>
</body>
</html>

Agora é só ver o exemplo funcionando.

Posts Relacionados

Confira também outros artigos interessantes postados aqui no blog.

Gostou desse post?

Assine o nosso Feed RSS, siga-nos no Twitter, ou simplesmente nos recomende a seus amigos!

Sobre Pedro Rogério

Pedro Rogério é desenvolvedor web por paixão, não saberia fazer melhor outra coisa. Além de escrever para o Pinceladas da Web também escreve para o CSS no Lanche, blog voltado ao desenvolvimento front-end.

Central Server

9 Responses to “Seletores CSS com jQuery”

  1. Neto disse:

    Ótimo artigo! Bons exemplos, parabéns!

  2. Celso disse:

    E eu vou falar o que hein mostro sagrado rs meus parabéns Pedrão!

  3. Alex Batista disse:

    Muito básico. O nível já foi mais alto!

  4. Leo Caseiro disse:

    jQuery trabalha perfeitamente com DOM e CSS!

    Esse é “O FRAMEWORK”

  5. Danilo disse:

    legal o post… será muito bom quando podermos trabalhar com CSS3. Vai dar muito poder ao css, eliminar bastante javascript e “if” de linguagem de servidor…

  6. Exelente! resumo perfeito! Seria mais interessante alguns exemplos com combinações de seletores.

  7. Alexandre disse:

    Nossa … d+ … jQuery é revolucionador … impressionante … hoje pesquisando ainda encontrei tbm um outro script de imagens panorâmicas … jQuery na cabeça e na veia! ^^

    Ótimo post!

  8. Tiago disse:

    Bom post!

    Me ajudou a resolver um problema.

    vlw!

  9. Euclides disse:

    legal o artigo, verdade.
    Embora fales muita merd@ no twitter, tu tens bons artigos.
    ah! tem um emoticon na parte de :ddd
    =)

Leave a Reply