SlideShare uma empresa Scribd logo
1 de 15
Baixar para ler offline
Bloco 5.1
JavaScript - DOM e Seletores
Elaborado por Ruâni Filipe (aluno - Turma 8), com base
em anotações pessoais do assunto, via Course e Aulas
ao Vivo
DOM (Document Object Model)
DOM (Document Object Model)
Window -> Página completa
Location -> Localização do objeto
Document -> A página em si
History -> Histórico da Sessão
Element -> Elementos HTML
Nó -> Cada caixa do fluxograma
DOM (Document Object Model)
Seletores
Por meio da tag <script> </script>, podendo ser de duas formas:
“Inline” -> fazendo o código JS diretamente no arquivo HTML
(não é boa prática, por dar uma aparência “suja” ao HTML)
Externo -> abrir um arquivo externo (normalmente chamado script.js, mas pode
ser qualquernome.js) e referenciar, tal qual fazemos com o CSS e pode ser feito
de duas formas:
1) Ao final do body, incluindo a linha <script src=”script.js”></script>
2) Final Head ou Início do Body, DESDE QUE tenha o atributo defer <script
src=”script.js” defer></script> (veremos em blocos mais à frente sobre
esse atributo)
Como a página sabe como acionar os seletores?
O objeto #document nos dá acesso para manipular/alterar o DOM
Ex.: se fizermos document.body ele irá retornar tudo o que está entre as
tags <body> e </body>
Seletor getElement -> por meio dele você conseguirá acesso para
manipular ID, Classes e Tags, por meio de suas funções:
Função getElementById
Função getElementsByClassName
Função getElementsByTagName
Função querySelector e querySelectorAll
Como usar os os seletores? Quais são?
Inicialmente, atenção:
Escrever getElementByID causa erro;
Verificar a referência ao Id, pois é Case-Sensitive
(diferencia MAIÚSCULAS de minúsculas)
Estrutura: document.getElementById(“nomeDoSeuId”)
Boa prática fazer let nomeDescritivo = document.getElementById(“nomeDoSeuId”), pois
fica mais clean referenciar ao document.getElementByID apenas pelo nome da variável
Função getElementById
Para manipular por meio das funções, há duas principais formas:
.innerHTML -> preferível usar desse modo, que tem maior aplicabilidade, não se
recomenda quando houver <tags> no meio do texto (<span>, <strong>, <b>, <i>...)
.innerText -> preferível usar quando há <tags> ao longo dos textos
Estrutura -> document.getElementById.innerHTML(ou.innerText) = “novoTexto”
Estilizações Estrutura -> document.getElementById(“nomeId”).style.seletorCSS = valor
ex.: document.getElementById(“nomeId”).style.color = “blue”
Função getElementById - Manipulando o DOM
Inicialmente, atenção:
Ele retorna como um Array, então, para ter acesso, lembre-se de usar os [indices];
O nome da função é getElements e não getElement;
Estrutura: document.getElementsByClassName(“nomeDaSuaClasse”)
Mesma boa prática que vimos anteriormente se aplicará aqui, qual seja, a de criar uma
variável para depois referenciar a função por meio do nomeDescritivo
Função getElementsByClassName
Estrutura -> Por se tratar de Array, é necessário percorrer esse Array ou acessá-lo por
meio do índice, como pode ser visto no exemplo abaixo, com base no vídeo do Course
let pilotosDeF1 = document.getElementsByClassName(“nomeClasse”)
for (let i = 0; i < pilotosDeF1.length; i +=1) {
pilotosDeF1[i].innerText=”Lewis Hamilton” (poderia ser também
pilotosDeF1[i].style.color ou pilotosDeF1[i].style.background ou diversas outras opções)
ATENÇÃO: Mesmo que o Array contenha apenas um índice, deverá acessar via índice,
no caso, por meio do índice [0]
Função getElementsByClassName - Manipulando o DOM
Inicialmente, atenção:
Ele retorna como um Array, então, para ter acesso, lembre-se de usar os [indices];
O nome da função é getElements e não getElement;
Lembrando que Tag é o elemento HTML (<div>, <p>, <section>, <header>...)
Estrutura: document.getElementsByTagName(“nomeDaSuaTag”)
Mesma boa prática que vimos anteriormente se aplicará aqui, qual seja, a de criar uma
variável para depois referenciar a função por meio do nomeDescritivo
Função getElementsByTagName
Estrutura -> Por se tratar de Array, é necessário percorrer esse Array ou acessá-lo por
meio do índice, como vimos na Manipulação da ClassName
Apenas destacando que a estrutura da função é variada, a depender do que se
necessita, assim, a função pode estilizar fonte, cor, background…
Função getElementsByTagName - Manipulando o DOM
Inicialmente, atenção:
querySelector retorna apenas o primeiro elemento
Essas funções trabalham mais especificamente com os seletores CSS, ao contrário do
que se faz em getElementById (“nomeId”), por exemplo, aqui se deve fazer tal qual no CSS
(# -> para Id’s e . -> para Classes)
Se fizer document.querySelector(“nomeId”) retornará null
querySelectorAll retornará todos os elementos com a especificação dada, NA FORMA
DE ARRAY
Função querySelector e querySelectorAll
Exemplo feito em Aula ao Vivo, usando a manipulação do querySelector dentro de uma
função.
No caso acima, a função quando chamada são passados 2 parâmetros (elementos, cor);
uma vez chamada, o querySelector irá pegar os elementos (lembrando que ele retornar
apenas o primeiro) e irá aplicar a cor passada como 2º parâmetro da função
ATENÇÃO: é apenas um exemplo de inúmeras utilizações possíveis das funções ;)
Função querySelector e querySelectorAll - Manipulando o
DOM

Mais conteúdo relacionado

Mais procurados

Mais procurados (13)

Java script aula 09 - JQuery
Java script   aula 09 - JQueryJava script   aula 09 - JQuery
Java script aula 09 - JQuery
 
Workshop Django
Workshop DjangoWorkshop Django
Workshop Django
 
jQuery Simplificando o JavaScript
jQuery Simplificando o JavaScriptjQuery Simplificando o JavaScript
jQuery Simplificando o JavaScript
 
Programação web ii aulas 08 e 09
Programação web ii   aulas 08 e 09Programação web ii   aulas 08 e 09
Programação web ii aulas 08 e 09
 
Php Básico - Parte 2
Php Básico - Parte 2Php Básico - Parte 2
Php Básico - Parte 2
 
Aula 11 - Controle de sessão em PHP - Programação Web
Aula 11  - Controle de sessão em PHP - Programação WebAula 11  - Controle de sessão em PHP - Programação Web
Aula 11 - Controle de sessão em PHP - Programação Web
 
Model View Controller
Model View ControllerModel View Controller
Model View Controller
 
Novas APIs do Java EE 7: JMS e Web Services
Novas APIs do Java EE 7: JMS e Web ServicesNovas APIs do Java EE 7: JMS e Web Services
Novas APIs do Java EE 7: JMS e Web Services
 
jQuery na Prática!
jQuery na Prática!jQuery na Prática!
jQuery na Prática!
 
JavaScript e JQuery para Webdesigners
JavaScript e JQuery para WebdesignersJavaScript e JQuery para Webdesigners
JavaScript e JQuery para Webdesigners
 
ODIG - Javascript, DOM Elements e jQuery
ODIG - Javascript, DOM Elements e jQueryODIG - Javascript, DOM Elements e jQuery
ODIG - Javascript, DOM Elements e jQuery
 
Ajax em java
Ajax em javaAjax em java
Ajax em java
 
Java script aula 05 - funções
Java script   aula 05 - funçõesJava script   aula 05 - funções
Java script aula 05 - funções
 

Semelhante a Bloco 5.1 - Manipulação do DOM

Semelhante a Bloco 5.1 - Manipulação do DOM (20)

Construindo temas para Plone com Diazo
Construindo temas para Plone com DiazoConstruindo temas para Plone com Diazo
Construindo temas para Plone com Diazo
 
Introdução HTML_CSS.pptx
Introdução  HTML_CSS.pptxIntrodução  HTML_CSS.pptx
Introdução HTML_CSS.pptx
 
Como criar Custom Tags
Como criar Custom TagsComo criar Custom Tags
Como criar Custom Tags
 
xDocLet - Geração de código com xdoclet
xDocLet - Geração de código com xdocletxDocLet - Geração de código com xdoclet
xDocLet - Geração de código com xdoclet
 
jQuery na Prática - Cauê Fajoli
jQuery na Prática - Cauê FajolijQuery na Prática - Cauê Fajoli
jQuery na Prática - Cauê Fajoli
 
LPII_Aula_7-JQuery.pdf
LPII_Aula_7-JQuery.pdfLPII_Aula_7-JQuery.pdf
LPII_Aula_7-JQuery.pdf
 
Tag Libraries
Tag LibrariesTag Libraries
Tag Libraries
 
Introdução ao JQuery e AJAX
Introdução ao JQuery e AJAXIntrodução ao JQuery e AJAX
Introdução ao JQuery e AJAX
 
Programação Web com jQuery
Programação Web com jQueryProgramação Web com jQuery
Programação Web com jQuery
 
Jquery a technical overview
Jquery a technical overviewJquery a technical overview
Jquery a technical overview
 
Java EE 6 JPA 2.0, EJB 3.1 e CDI 1.0
Java EE 6 JPA 2.0, EJB 3.1 e CDI 1.0Java EE 6 JPA 2.0, EJB 3.1 e CDI 1.0
Java EE 6 JPA 2.0, EJB 3.1 e CDI 1.0
 
Minicurso javascript
Minicurso javascriptMinicurso javascript
Minicurso javascript
 
Componentes para a Web
Componentes para a WebComponentes para a Web
Componentes para a Web
 
Bloco 5.2
Bloco 5.2Bloco 5.2
Bloco 5.2
 
Curso de XHTML
Curso de XHTMLCurso de XHTML
Curso de XHTML
 
J query
J queryJ query
J query
 
Css Curso completo
Css Curso completoCss Curso completo
Css Curso completo
 
Apostila Css ( Apostilando.com )
Apostila Css ( Apostilando.com )Apostila Css ( Apostilando.com )
Apostila Css ( Apostilando.com )
 
Apache Struts
Apache StrutsApache Struts
Apache Struts
 
Apostila ph pwamp_parte5
Apostila ph pwamp_parte5Apostila ph pwamp_parte5
Apostila ph pwamp_parte5
 

Bloco 5.1 - Manipulação do DOM

  • 1. Bloco 5.1 JavaScript - DOM e Seletores Elaborado por Ruâni Filipe (aluno - Turma 8), com base em anotações pessoais do assunto, via Course e Aulas ao Vivo
  • 4. Window -> Página completa Location -> Localização do objeto Document -> A página em si History -> Histórico da Sessão Element -> Elementos HTML Nó -> Cada caixa do fluxograma DOM (Document Object Model)
  • 6. Por meio da tag <script> </script>, podendo ser de duas formas: “Inline” -> fazendo o código JS diretamente no arquivo HTML (não é boa prática, por dar uma aparência “suja” ao HTML) Externo -> abrir um arquivo externo (normalmente chamado script.js, mas pode ser qualquernome.js) e referenciar, tal qual fazemos com o CSS e pode ser feito de duas formas: 1) Ao final do body, incluindo a linha <script src=”script.js”></script> 2) Final Head ou Início do Body, DESDE QUE tenha o atributo defer <script src=”script.js” defer></script> (veremos em blocos mais à frente sobre esse atributo) Como a página sabe como acionar os seletores?
  • 7. O objeto #document nos dá acesso para manipular/alterar o DOM Ex.: se fizermos document.body ele irá retornar tudo o que está entre as tags <body> e </body> Seletor getElement -> por meio dele você conseguirá acesso para manipular ID, Classes e Tags, por meio de suas funções: Função getElementById Função getElementsByClassName Função getElementsByTagName Função querySelector e querySelectorAll Como usar os os seletores? Quais são?
  • 8. Inicialmente, atenção: Escrever getElementByID causa erro; Verificar a referência ao Id, pois é Case-Sensitive (diferencia MAIÚSCULAS de minúsculas) Estrutura: document.getElementById(“nomeDoSeuId”) Boa prática fazer let nomeDescritivo = document.getElementById(“nomeDoSeuId”), pois fica mais clean referenciar ao document.getElementByID apenas pelo nome da variável Função getElementById
  • 9. Para manipular por meio das funções, há duas principais formas: .innerHTML -> preferível usar desse modo, que tem maior aplicabilidade, não se recomenda quando houver <tags> no meio do texto (<span>, <strong>, <b>, <i>...) .innerText -> preferível usar quando há <tags> ao longo dos textos Estrutura -> document.getElementById.innerHTML(ou.innerText) = “novoTexto” Estilizações Estrutura -> document.getElementById(“nomeId”).style.seletorCSS = valor ex.: document.getElementById(“nomeId”).style.color = “blue” Função getElementById - Manipulando o DOM
  • 10. Inicialmente, atenção: Ele retorna como um Array, então, para ter acesso, lembre-se de usar os [indices]; O nome da função é getElements e não getElement; Estrutura: document.getElementsByClassName(“nomeDaSuaClasse”) Mesma boa prática que vimos anteriormente se aplicará aqui, qual seja, a de criar uma variável para depois referenciar a função por meio do nomeDescritivo Função getElementsByClassName
  • 11. Estrutura -> Por se tratar de Array, é necessário percorrer esse Array ou acessá-lo por meio do índice, como pode ser visto no exemplo abaixo, com base no vídeo do Course let pilotosDeF1 = document.getElementsByClassName(“nomeClasse”) for (let i = 0; i < pilotosDeF1.length; i +=1) { pilotosDeF1[i].innerText=”Lewis Hamilton” (poderia ser também pilotosDeF1[i].style.color ou pilotosDeF1[i].style.background ou diversas outras opções) ATENÇÃO: Mesmo que o Array contenha apenas um índice, deverá acessar via índice, no caso, por meio do índice [0] Função getElementsByClassName - Manipulando o DOM
  • 12. Inicialmente, atenção: Ele retorna como um Array, então, para ter acesso, lembre-se de usar os [indices]; O nome da função é getElements e não getElement; Lembrando que Tag é o elemento HTML (<div>, <p>, <section>, <header>...) Estrutura: document.getElementsByTagName(“nomeDaSuaTag”) Mesma boa prática que vimos anteriormente se aplicará aqui, qual seja, a de criar uma variável para depois referenciar a função por meio do nomeDescritivo Função getElementsByTagName
  • 13. Estrutura -> Por se tratar de Array, é necessário percorrer esse Array ou acessá-lo por meio do índice, como vimos na Manipulação da ClassName Apenas destacando que a estrutura da função é variada, a depender do que se necessita, assim, a função pode estilizar fonte, cor, background… Função getElementsByTagName - Manipulando o DOM
  • 14. Inicialmente, atenção: querySelector retorna apenas o primeiro elemento Essas funções trabalham mais especificamente com os seletores CSS, ao contrário do que se faz em getElementById (“nomeId”), por exemplo, aqui se deve fazer tal qual no CSS (# -> para Id’s e . -> para Classes) Se fizer document.querySelector(“nomeId”) retornará null querySelectorAll retornará todos os elementos com a especificação dada, NA FORMA DE ARRAY Função querySelector e querySelectorAll
  • 15. Exemplo feito em Aula ao Vivo, usando a manipulação do querySelector dentro de uma função. No caso acima, a função quando chamada são passados 2 parâmetros (elementos, cor); uma vez chamada, o querySelector irá pegar os elementos (lembrando que ele retornar apenas o primeiro) e irá aplicar a cor passada como 2º parâmetro da função ATENÇÃO: é apenas um exemplo de inúmeras utilizações possíveis das funções ;) Função querySelector e querySelectorAll - Manipulando o DOM