Difference between revisions of "DOM Changing elements"
Jump to navigation
Jump to search
Line 68: | Line 68: | ||
</div> | </div> | ||
==Remove | ==Remove France== | ||
<div class='qu'> | <div class='qu'> | ||
The element with id '''fr''' must go. | |||
<div class=imper>Use .remove() to remove France</div> | <div class=imper>Use .remove() to remove France</div> | ||
Revision as of 17:56, 7 September 2021
<div id='countries'> <div id='fr'> <div>France</div> <img src='/flags/fr.gif'/> </div> <div id='fi'> <div>Finland</div> <img src='/flags/fi.gif'/> </div> </div>
In these examples the web page contains the following content.
<div id='countries'> <div id='fr'> <div>France</div> <img src='/flags/fr.gif'/> </div> <div id='fi'> <div>Finland</div> <img src='/flags/fi.gif'/> </div> </div>
Change an element based on id
If the element you want to change has an id you can use getElementById
- The html above has a div with id "countries"
Change the countries div to have silver background color.
let e = document.getElementById('countries'); e.style.backgroundColor = 'pink';
let e = document.getElementById('countries'); e.style.backgroundColor = 'silver';
Find an element and change it
You can use document.querySelector to find elements. The pattern given is very like the patterns you use in CSS.
- 'img' will match a <img/> element
- '#fr' will match an element with id fr
Make the width of the first img 50px
document.querySelector('img').style.width = '75px';
document.querySelector('img').style.width = '50px';
Find many elements, change them all
You can use document.querySelectorAll to lots of elements.
- You can visit every element in the list with forEach
Make the width of all img 50px
document.querySelector('img').style.width = '75px';
document.querySelectorAll('img').forEach(i=>{ i.style.width = '50px'; });
Remove France
The element with id fr must go.
Use .remove() to remove France
document.querySelector('#fr').remove();