官术网_书友最值得收藏!

DOM

The DOM is what is used to describe the structure of an HTML or XML page. It creates a tree-like structure that provides us with the ability to do everything from creating, reading, updating, and deleting nodes to traversing the tree and many more features, all within JavaScript. Let's consider the following HTML page:

<!DOCTYPE html>
<html lang="en">
<head>
<title>DOM Example</title>
</head>
<body>
<div>
<p>I love JavaScript!</p>
<p>Here's a list of my favourite frameworks:</p>
<ul>
<li>Vue.js</li>
<li>Angular</li>
<li>React</li>
</ul>
</div>

<script src="app.js"></script>
</body>
</html>

We're able to look at the HTML and see that we have one div, two p, one ul, and li tags. The browser parses this HTML and produces the DOM Tree, which at a high level looks similar to this:

We can then interact with the DOM to get access to these elements by TagName using document.getElementsByTagName(), returning a HTML collection. If we wanted to map over these collection objects, we could create an array of these elements using Array.from. The following is an example:

const paragraphs = Array.from(document.getElementsByTagName('p'));
const listItems = Array.from(document.getElementsByTagName('li'));

paragraphs.map(p => console.log(p.innerHTML));
listItems.map(li => console.log(li.innerHTML));

This should then log the innerHTML of each item to the console inside of our array(s), thus showing how we can access items inside of the DOM:

主站蜘蛛池模板: 万安县| 东乌珠穆沁旗| 潮安县| 德庆县| 磐石市| 临夏县| 城步| 获嘉县| 黎平县| 抚远县| 广宁县| 类乌齐县| 盘山县| 无棣县| 新津县| 延庆县| 额济纳旗| 阜阳市| 双峰县| 武定县| 灵丘县| 汉源县| 宁强县| 石泉县| 江津市| 浏阳市| 利川市| 罗定市| 栾川县| 普兰店市| 城固县| 招远市| 肃南| 乃东县| 义马市| 克拉玛依市| 木兰县| 司法| 伊吾县| 定安县| 珲春市|