Skip to content

Commit 09608ed

Browse files
committed
docs: creating & modifying dom element
1 parent c7dc1c3 commit 09608ed

4 files changed

+81
-1
lines changed

module-1.4-design-patterns.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -151,4 +151,4 @@ console.log(Module.publicFunction()); // 20
151151

152152
The Module pattern allows for the creation of public and private members, promoting encapsulation.
153153

154-
These are just a few examples of design patterns in JavaScript. Design patterns provide a structured approach to solving common software design problems, making your code more organized, efficient, and maintainable. Depending on the situation, different patterns can be applied to solve specific issues in your code.
154+
These are just a few examples of design patterns in JavaScript. Design patterns provide a structured approach to solving common software design problems, making your code more organized, efficient, and maintainable. Depending on the situation, different patterns can be applied to solve specific issues in your code.
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,80 @@
1+
#### 3.2. Creating and Modifying DOM Elements
2+
3+
In this section, we'll delve into techniques for creating and modifying DOM elements using JavaScript. This is crucial for dynamically generating content and providing a more interactive user experience on web pages.
4+
5+
##### Creating New DOM Elements
6+
7+
You can create new DOM elements using the `document.createElement` method.
8+
9+
**Example:**
10+
11+
```javascript
12+
// Create a new paragraph element
13+
const newParagraph = document.createElement('p');
14+
15+
// Set the text content of the paragraph
16+
newParagraph.textContent = 'This is a dynamically created paragraph.';
17+
```
18+
19+
In this example, we create a new paragraph element and set its text content.
20+
21+
##### Modifying Elements
22+
23+
After creating or selecting elements, you can modify their properties, attributes, and content.
24+
25+
**Example:**
26+
27+
```javascript
28+
// Modify attributes
29+
newParagraph.setAttribute('class', 'highlight');
30+
31+
// Modify styles
32+
newParagraph.style.color = 'blue';
33+
34+
// Append the new paragraph to the body
35+
document.body.appendChild(newParagraph);
36+
```
37+
38+
Here, we add a `class` attribute to the paragraph, change its text color using the `style` property, and append it to the `body` element.
39+
40+
##### Inserting Elements
41+
42+
You can insert elements at specific locations in the DOM using methods like `appendChild`, `insertBefore`, and `insertAdjacentHTML`.
43+
44+
**Example:**
45+
46+
```javascript
47+
// Create a new div element
48+
const newDiv = document.createElement('div');
49+
newDiv.textContent = 'This is a new div.';
50+
51+
// Insert the new div before an existing element
52+
const existingParagraph = document.querySelector('p');
53+
document.body.insertBefore(newDiv, existingParagraph);
54+
```
55+
56+
In this example, we create a new `div` element and insert it before an existing `p` element using `insertBefore`.
57+
58+
##### Cloning Elements
59+
60+
Sometimes you may want to create copies of existing elements.
61+
62+
**Example:**
63+
64+
```javascript
65+
// Clone an existing element
66+
const clone = newParagraph.cloneNode(true);
67+
68+
// Modify the clone
69+
clone.textContent = 'This is a clone of the paragraph.';
70+
document.body.appendChild(clone);
71+
```
72+
73+
Here, we clone the `newParagraph` element, modify the clone's content, and append it to the `body`.
74+
75+
#### Benefits
76+
77+
- Creating and modifying DOM elements dynamically enhances the interactivity and user experience of web pages.
78+
- This is essential for building dynamic content, interactive forms, and other web applications that respond to user input.
79+
80+
Understanding how to create and modify DOM elements is a fundamental skill for web developers. These techniques empower you to provide a more engaging and responsive user experience on your web pages.

module-3.3-event-handling-and-delegation.md

Whitespace-only changes.

module-3.4-web-apis-and-ajax.md

Whitespace-only changes.

0 commit comments

Comments
 (0)