O manual descreve o framework jQuery, que ajuda desenvolvedores a resolver problemas de compatibilidade entre navegadores e reduzir código, por meio de seletores, manipulação de elementos, eventos e efeitos.
Quem? JQuery é um framework que ajudar os desenvolvedores a se concentrarem na lógica dos sistemas web e não nos problemas de compatibilidade dos navegadores. Seu lema é escrever menos e fazer mais.
3.
Funcionalidades Resolução daincompatibilidade entre os navegadores. Redução de código. Reusabilidade do código através de plug-ins. Utilização de uma vasta quantidade de plugins criados por outros desenvolvedores. Trabalha com AJAX e DOM. Implementação segura de recursos do CSS1, CSS2 e CSS3.
4.
Exemplo de reduçãode código No Javascript nativo: document.getElementById(“minhaTabela”) No jQuery: $(“#minhaTabela”) No Javascript nativo: document.getElementsByTagName("ul")[0].getElementsByTagName("li")[0].innerHTML No Jquery: $("ul:first > li:first").text() Retornar o texto do primeiro item da primeira lista: Retornar elemento pelo índice:
Seletores Basicamente, oseletor pode ser um nome de elemento para se manipular (seletor de tipo de elemento), uma classe (seletor de classe) ou um identificador (seletor de id), mas há também outros formatos de seletores. Seletor Descrição Executando Elemento Retorna os elemento pelo nome. $(“table”) * Todos os elementos. $(“*”) # Elemento por índice. $(“#tabela1”) > Retorna os filhos do elemento. $(“#tabela1 > tbody”) ‘ ‘ (espaço) Retorna os descendentes do elemento. $(“#tabela1 td”) + Próximo elemento (irmão). $(“form + div”) .class Retorna os elementos por nome da classe CSS. $(“.cssTabelas”)
7.
Pseudo-Seletores São formasaprimoradas de distinção para seletores. Seletor Descrição Executando :first Primeiro item. $(“ul > li:first”) :last Último item. $(“ul > li:last”) :not Ignora algo/alguma coisa. $(“ul > li:not(:last)” :contains Contenha texto. $(“p:contains(helton)”) :empty Vazio. $(“p:empty”) :even, :odd Item impar ou par. $(“tr > td:even”) :visible Visível. $(“div:visible”) :first-child Primeiro filho. $(“table :first-child”) :last-child Último filho. $(“table :last-child”) :onlychild Somente filhos. $(“table :onlychild”)
Pseudo-Seletores p/ AtributosUtilizado, geralmente, em conjunto com outros seletores. Ex: :input[value=‘helton’]. Atributos: São usados para descrever um elemento. Ex: <input type =“text” class =“cinza” />. Os atributos da expressão são: type e class. Seletor Descrição Executando = Atributo igual. [atributo=valor] != Atributo diferente. [atributo!=valor] ^ Contenha o valor no atributo. [atributo^=valor] $= Contenha o valor no final do atributo. [atributo$=valor]
10.
Seletor Pai Sintax:$(“meuSeletor”, “meuSeletorPai”) Exemplo: Limpar os campos que não estão vazio: $(“:input:not(:empty)”, “#meuFormulario”).val(‘’) Ao estender o jQuery, geralmente as funções possuem chamados ao parent. Exemplo para limpar todos os input de um formulário: $(“#meuForm”).limpaCampos(); jQuery.fn.extend({ limpaCampos : function(){ $(":input", this).val(''); // this é o elemento #meuForm. } }); Geralmente se usa o parent em componentes do jQuery ou funções utilitárias.
Atributos São usadospara descrever um elemento. Ex: <input type =“text” class =“cinza” />. Os atributos da expressão são: type e class. Função Descrição Executando attr(chave) Retorna o atributo. $(“li:first”).attr(“id”) attr(chave,valor) Altera o valor do atributo. $(“li:first”).attr(“id”,”new”) removeAttr(chave) Remove atributo. $(“li:first”).removeAttr(“id”) addClass(chave) Adiciona atributo class (css). $(“div”).addClass(“dv”) removeClass(chave) Remove atributo class. $(“div”).removeClass(“dv”) toggleClass(chave) Alterna class. $(“div”).toggleClass(“dv”) html() Retorna o código html. $(“div”).html() html(valor) Altera o código html. $(“div”).html(“<b>oi</b>”) text() Retorna o conteúdo texto. $(“div”).text() text(valor) Altera o conteúdo texto. $(“div”).text(“oi”) val() Retorna o valor do elemento. $(“:input:first”).val() val(valor) Altera o valor do elemento. $(“:input:first”).val(1234)
Navegação Além dosseletores é possível utilizar funções de navegação. Segue a lista das principais funções de navegação. Função Descrição Executando filter(expr) Retorna os elemento que se encaixam na expressão. Personalizado. $(“li”).filter(function(i){ return i % 2 == 0; }) // múltiplo de 2 is(expr) Retorna true se o elemento contem a expressão, senão false. $(“div”).is(“form”) // false not(expr) Retorna os elemento que não se encaixam na expressão. $(“div”).not(“.green”) slice(inicio, fim) Filtra os elementos por uma faixa de índice. $(“div”).slice(12,44) parent() Retorna o pai do elemento. $(“li”).parent() // ul next() Retorna o próximo irmão. $(“li:first”).next() // outro ‘li’ find(expr) Procura elementos filhos e netos que se encaixam na expressão. $(“ul”).find(“li:not(:empty)”)
Manipulação Há semprea necessidade de mover elementos e editar html. Com esta necessidade foram elaborados os métodos de manipulação do jQuery. Função Descrição Executando append(expr) Adiciona html no final do elemento. $(“div”).append(“<b>oi</b>”) appendTo(expr) Move o elemento para o final do elemento citado na expressão (expr). $(“div”).appendTo(“span”) prepend(expr) Adiciona html no inicio do elemento. $(“div”).prepend(“No inicio”) prependTo(expr) Move o elemento para o inicio do elemento citado na expressão (expr). $(“div”).prependTo(“span”) after(expr) Adiciona html após o elemento. $(“div”).after(“apos”) before(expr) Adiciona html antes do elemento. $(“div”).before(“antes”)
17.
Manipulação Função DescriçãoExecutando insertAfter(expr) Move o elemento após o elemento citado na expressão (expr). $("li:first").insertAfter("li:last") insertBefore(expr) Move o elemento antes do elemento citado na expressão (expr). $("li:eq(1)").insertBefore("li:first") empty() Limpa elemento. $("#txtNome").empty() remove() Remove elemento. $("#txtNomve").remove() clone() Clona elemento, exceto input file. var clone = $("div").clone()
CSS Criado apartir do html 4, o CSS é uma forma de separar os estilos do código html. Função Descrição Executando css(chave) Retorna a propriedade no CSS. $(“div”).css(“color”) css(chave,valor) Altera a propriedade no CSS. $(“div”).css(“color”,”#fff”) css(objeto) Altera, por objeto, a(s) propriedade(s) no CSS. $(“div”).css({ color : “#fff”, border : “1px solid #000” }) position() Retorna left, top do elemento. $(“div”).position().left // .top height() Retorna a altura do elemento. $(“div”).height() height(valor) Altera a altura do elemento. $(“div”).height(“100px”) width() Retorna a largura do elemento. $(“div”).width() width(valor) Altera a altura do elemento. $(“div”).width(“300px”)
20.
CSS com objetoJS Uma das formas de alterar o CSS de um elemento é utilizando objeto dentro do primeiro parâmetro da função css. Note os objetos do JavaScript utilizam {} para sua formação. Ex: var objeto = { id :1, emp : 2}; Folha de estilo CSS: div { display: block; color:#fff; background: red url(arquivo.png) } Aplicando no jQuery: $(“div”).css({ display : “block”, color : “#fff”, background : “red url(arquivo.png)” });
Evento ready Oevento ready será o mais comum no dia a dia por ser semelhante ao window.onload e herdar suas boas características: O evento ready é executado após o carregamento total dos elementos. Melhora a organização do JavaScript. Impossibilita chamados a elementos ainda não carregados na tela. Exemplo: $(document).ready(function(){ // Ao carregar a pagina executa meu conteúdo });
Efeitos Os principaisefeitos aplicados aos elementos são os listados a baixo, porém é possível criar seus próprios efeitos utilizando a função animate. Função Descrição Executando show() Exibe o elemento. $(“div”).show() show(“slow”) Exibe suavemente o elemento. $(“div”).show(“slow”) hide() Esconde o elemento. $(“div”).hide() hide(“slow”) Esconde suavemente o elemento. $(“div”).hide(“slow”) toggle() Exibe/Esconde o elemento. $(“div”).toggle() toggle(“slow”) Exibe/Esconde suavemente o elemento. $(“div”).toggle(“slow”) slideUp() Cortina p/ esconder o elemento. $(“div”).slideUp() slideUp(“slow”) Cortina p/ esconder suavemente o elemento. $(“div”).slideUp(“slow”) slideDown() Cortina p/ exibir o elemento. $(“div”).slideDown() slideDown(“slow”) Cortina p/ exibir suavemente o elemento. $(“div”).slideDown(“slow”)
AJAX Asynchronous JavaScriptand XML , ou AJAX consiste em um método para se comunicar com um servidor web sem a necessidade de recorrer ao recarregamento de página. Note: O jQuery é cross-browser, todavia você não precisa se preocupar com a compatibilidade entre navegadores quando faz uma requisição AJAX. Propriedades type Tipo de requisição ( POST ou GET). url URL do serviço. data Dados a serem enviados ao serviço. Callback’s success Se a operação foi efetuada com sucesso, dispara este callback. complete Se a operação chegou ao final, dispara este callback. Error Se a operação não foi efetuada, dispara este callback.