Elementos - JavaScript
Ao trabalhar com elementos em uma página web, podemos utilizar tanto a funcionalidade do tipo Node
HTMLElement
HTMLElement
Node
nodeType
Cada elemento em uma página web corresponde a um tipo específico em JavaScript. Estes tipos são subtipos de HTMLElement
:HTMLAnchorElement
<a>
:HTMLButtonElement
<button>
:HTMLDivElement
<div>
:HTMLFormElement
<form>
:HTMLHeadingElement
,<h1>
,<h2>
,<h3>
,<h4>
,<h5>
<h6>
:HTMLIFrameElement
<iframe>
:HTMLImageElement
<img>
:HTMLInputElement
<input>
:HTMLLIElement
<li>
:HTMLOListElement
<ol>
:HTMLParagraphElement
<p>
:HTMLScriptElement
<script>
:HTMLSelectElement
<select>
:HTMLSpanElement
<span>
:HTMLTableElement
<table>
:HTMLTableCellElement
<td>
:HTMLTextAreaElement
<textarea>
:HTMLUListElement
<ul>
Podemos identificar o tipo de um elemento usando o método Object.getPrototypeOf()
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<title>Programício</title>
</head>
<body>
<h1 id="header">Home Page</h1>
<script>
const header = document.getElementById("header");
console.log(Object.getPrototypeOf(header)); // HTMLHeadingElement
</script>
</body>
</html>
Propriedades de Elementos
O tipo Element
: retorna a tag do elemento em maiúsculas. Por exemplo, para um elemento <h1>,tagName
retornará "H1".tagName
etextContent
: são usadas para acessar ou modificar o conteúdo de texto de um elemento. A diferença entre elas é que textContent retorna o texto de todos os elementos,innerText
,<script>
e textos ocultos, enquanto<style>
retorna somente o texto visível.innerText
: retorna ou define o conteúdo HTML de um elemento.innerHTML
Uma das propriedades mais importantes é a propriedade tagName
header.tagName
Gerenciando o Conteúdo HTML
A propriedade innerHTML
Por exemplo, se quisermos inserir um <span>
innerHTML
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<title>Programício</title>
</head>
<body>
<h1 id="header">Home Page</h1>
<script>
const header = document.getElementById("header");
// obtendo o HTML do elemento
console.log(header.innerHTML); // Home Page
// modificando o HTML do elemento
header.innerHTML = "<span style='color:navy;'>Hello World</span>";
</script>
</body>
</html>
Gerenciando o Conteúdo de Texto
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<title>Programício</title>
</head>
<body>
<h1 id="header">Home Page</h1>
<script>
const header = document.getElementById("header");
console.log(header.textContent); // Home Page
header.textContent = "Hello World";
console.log(header.textContent); // Hello World
console.log(header.innerText); // Hello World
header.innerText = "Hello World2";
console.log(header.innerText); // Hello World2
</script>
</body>
</html>
É importante notar que nem textContent
innerText
header.innerText = "<span style='color: navy'>Hello World</span>";