В опубликованном вами коде было много ненужного контента, не имеющего отношения к вашему вопросу.
Итак, вот небольшой фрагмент, который делает то, что вам нужно.
Что вам нужно сделать, так это указать цель для каждого переключателя меню. Добавьте прослушиватели событий к этим переключателям и вытяните связанную цель, используя javascript.
Вместо того, чтобы показывать и скрывать элементы с помощью javascript, вам лучше использовать css для этого. Таким образом вы можете добавлять и удалять классы, которые сообщают вам, открыто ваше меню или нет. В данном случае я использовал «открыть меню».
var toggles = document.querySelectorAll('.toggle');
// console.log(toggles);
toggles.forEach(
(toggle) => {
toggle.addEventListener('click', function () {
const id = toggle.getAttribute('data-target');
const menu = document.getElementById(id);
menu.classList.toggle('menu-open');
})
}
)
body {
padding: 0 !important;
margin: 0 !important;
font-size: 16px;
background: black;
}
* {
box-sizing: border-box;
/* margin: 0; */
padding: 0;
}
.navMenu {
margin-top: 40px;
}
.navMenu .menuItems {
list-style-type: none;
text-align: left;
}
.navMenu .menuItems > li,
.navMenu .subMenu-Items > li {
width: 100%;
border-bottom: 2px solid rgb(41, 35, 35);
}
.navMenu .menuItems > li:first-child {
border-top: 2px solid rgb(41, 35, 35);
}
.navMenu .menuItems > li > a:link {
display: inline-flex;
color: white;
text-decoration: none;
text-transform: uppercase;
padding: 18px 15px;
width: 80%;
}
.navMenu .menuItems > li > a:visited,
.navMenu .subMenu-Items > li > a:visited {
color: white;
}
.navMenu .menuItems > li > a:hover,
.navMenu .subMenu-Items > li > a:hover {
cursor: pointer;
background-color: navy;
}
.navMenu .menuItems > li > a:active,
.navMenu .subMenu-Items > li > a:active {
background-color: white;
color: navy;
}
.navMenu .menuItems > li .showSubMenu,
.navMenu .menuItems > li .hideSubMenu {
width: fit-content;
height: fit-content;
padding: 15px;
}
.navMenu .menuItems > li > .showSubMenu img,
.navMenu .menuItems > li > .hideSubMenu img {
width: 15px;
height: 15px;
}
.navMenu .menuItems > li .hideSubMenu {
display: none;
}
.navMenu .menuItems > li .showSubMenu:hover,
.navMenu .menuItems > li .hideSubMenu:hover {
cursor: pointer;
background-color: navy;
}
.navMenu .subMenu-Items li > a:link {
display: inline-flex;
color: white;
text-decoration: none;
text-transform: capitalize;
padding: 8px 50px;
width: 80%;
}
.navMenu .subMenu-Items {
display: none;
}
.navMenu .menu-open .subMenu-Items {
display: block;
}
<nav class="navMenu">
<ul class="menuItems">
<li><a href="index.html">Home</a></li>
<li id="sub-1">
<a class="aboutus" href="aboutus.html">About Us</a>
<span class="toggle" data-target="sub-1">
<span id="showSubMenu" class="showSubMenu">
<img src="http://via.placeholder.com/20/" alt="" />
</span>
<span id="hideSubMenu" class="hideSubMenu">
<img src="http://via.placeholder.com/20/" alt="" />
</span>
</span>
<ul id="subMenu-Items" class="subMenu-Items">
<li><a href="">History</a></li>
<li><a href="">Our Community</a></li>
<li><a href="">Achievements</a></li>
<li><a href="">Vision, Mission & Core Values</a></li>
<li><a href="">Head Teacher's Note</a></li>
<li><a href="">School Songs & Prayer</a></li>
<li><a href="">FAQs</a></li>
</ul>
</li>
<li id="sub-2">
<a class="admissions" href="admissions.html">Admissions</a>
<span class="toggle" data-target="sub-2">
<span id="showSubMenu" class="showSubMenu">
<img src="http://via.placeholder.com/20/" alt="" />
</span>
<span id="hideSubMenu" class="hideSubMenu">
<img src="http://via.placeholder.com/20/" alt="" />
</span>
</span>
<ul id="subMenu-Items" class="subMenu-Items">
<li><a href="">Why BGS?</a></li>
<li><a href="">Admission Process</a></li>
<li><a href="">Entrance Examination</a></li>
</ul>
</li>
<li><a class="academics" href="academics.html">Academics</a></li>
</ul>
</nav>