Skip to content

Commit 180b53a

Browse files
committed
Day 10
1 parent afaf2dd commit 180b53a

File tree

1 file changed

+141
-0
lines changed

1 file changed

+141
-0
lines changed

Day 10 Event handling.html

+141
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,141 @@
1+
<!-- Activity 1: Basic Event Handling -->
2+
3+
<!-- Task 1: Add a click event listener to a button that changes the text content of a paragraph -->
4+
5+
<button id="changeTextButton">Change Text</button>
6+
<p id="textParagraph">Original Text</p>
7+
8+
<script>
9+
document.getElementById('changeTextButton').addEventListener('click', function() {
10+
document.getElementById('textParagraph').textContent = 'Text has been changed!';
11+
});
12+
</script>
13+
14+
15+
<!-- Task 2: Add a double-click event listener to an image that toggles its visibility. -->
16+
17+
<img id="toggleImage" src="image.jpg" alt="Sample Image" style="display: block;">
18+
19+
<script>
20+
document.getElementById('toggleImage').addEventListener('dblclick', function() {
21+
const img = document.getElementById('toggleImage');
22+
img.style.display = img.style.display === 'none' ? 'block' : 'none';
23+
});
24+
</script>
25+
26+
27+
<!-- Activity 2: Mouse Events -->
28+
29+
<!-- Task 3: Add a mouseover event listener to an element that changes its background color -->
30+
31+
<div id="hoverElement" style="width: 100px; height: 100px; background-color: lightblue;">Hover over me!</div>
32+
33+
<script>
34+
document.getElementById('hoverElement').addEventListener('mouseover', function() {
35+
this.style.backgroundColor = 'lightgreen';
36+
});
37+
</script>
38+
39+
<!-- Task 4: Add a mouseout event listener to an element that resets its background color -->
40+
41+
<script>
42+
document.getElementById('hoverElement').addEventListener('mouseout', function() {
43+
this.style.backgroundColor = 'lightblue';
44+
});
45+
</script>
46+
47+
<!-- Activity 3: Keyboard Events -->
48+
49+
<!-- Task 5: Add a keydown event listener to an input field that logs the key pressed to the console. -->
50+
51+
<input id="keydownInput" type="text" placeholder="Type something...">
52+
53+
<script>
54+
document.getElementById('keydownInput').addEventListener('keydown', function(event) {
55+
console.log('Key pressed: ', event.key);
56+
});
57+
</script>
58+
59+
<!-- Task 6: Add a keyup event listener to an input field that displays the current value in a paragraph. -->
60+
61+
<p id="displayText"></p>
62+
63+
<script>
64+
document.getElementById('keydownInput').addEventListener('keyup', function() {
65+
document.getElementById('displayText').textContent = this.value;
66+
});
67+
</script>
68+
69+
<!-- Activity 4: Form Events -->
70+
71+
<!-- Task 7: Add a submit event listener to a form that prevents the default submission and logs the form data to the console. -->
72+
73+
<form id="exampleForm">
74+
<input type="text" name="username" placeholder="Username">
75+
<input type="submit" value="Submit">
76+
</form>
77+
78+
<script>
79+
document.getElementById('exampleForm').addEventListener('submit', function(event) {
80+
event.preventDefault();
81+
const formData = new FormData(this);
82+
for (let [key, value] of formData.entries()) {
83+
console.log(key, ':', value);
84+
}
85+
});
86+
</script>
87+
88+
<!-- Task 8: Add a change event listener to a select dropdown that displays the selected value in a paragraph. -->
89+
<select id="dropdown">
90+
<option value="Option 1">Option 1</option>
91+
<option value="Option 2">Option 2</option>
92+
<option value="Option 3">Option 3</option>
93+
</select>
94+
<p id="selectedValue"></p>
95+
96+
<script>
97+
document.getElementById('dropdown').addEventListener('change', function() {
98+
document.getElementById('selectedValue').textContent = 'Selected: ' + this.value;
99+
});
100+
</script>
101+
102+
103+
<!-- Activity 5: Event Delegation -->
104+
105+
<!-- Task 9: Add a click event listener to a list that logs the text content of the clicked list item using event delegation. -->
106+
<ul id="itemList">
107+
<li>Item 1</li>
108+
<li>Item 2</li>
109+
<li>Item 3</li>
110+
</ul>
111+
112+
<script>
113+
document.getElementById('itemList').addEventListener('click', function(event) {
114+
if (event.target && event.target.nodeName === "LI") {
115+
console.log('List item clicked:', event.target.textContent);
116+
}
117+
});
118+
</script>
119+
120+
<!-- Task 10: Add an event listener to a parent element that listens for events from dynamically added child elements -->
121+
122+
<div id="parentElement">
123+
<!-- Dynamic elements will be added here -->
124+
</div>
125+
<button id="addElement">Add Element</button>
126+
127+
<script>
128+
document.getElementById('addElement').addEventListener('click', function() {
129+
const newElement = document.createElement('div');
130+
newElement.textContent = 'New Element';
131+
newElement.classList.add('childElement');
132+
document.getElementById('parentElement').appendChild(newElement);
133+
});
134+
135+
document.getElementById('parentElement').addEventListener('click', function(event) {
136+
if (event.target && event.target.classList.contains('childElement')) {
137+
console.log('Dynamic child element clicked:', event.target.textContent);
138+
}
139+
});
140+
</script>
141+

0 commit comments

Comments
 (0)