Virtual DOMs seem to be the purview of specific frameworks like React. I'm not exactly sure what the difference is when it comes to a virtual DOM.
const selectedEement = document.getElementById('id-tag');
const newElement = document.createElement('tag');
This gets tricky, especially when pairing with CSS styles. Event listeners can be added to a number of different functions in very complex ways. In the canopy-copycat project I did not fully understand how to make content appear and disappear at will in specific divs. I'm afriad that I've got something conceptually wrong with my understanding of the page and how DOM manipulation works.