'whenever I click on a menu item i want all the other head menu's to be invisible

okay so i have been trying to figure this out for a while now. but i want all the head menu's to be invisible whenever i click on a head menu. so if i click on discord menu. i want the other menu's to be gone. besides the sub menu ofcourse.

jsfiddle : http://jsfiddle.net/s0rxzavn/2/

HTML

   <div id="mk-menu">


        <div>
            <!-- wrapper to separate menu items for jquery -->
            <div class="mk-menu-item"> <a class="menu-head" id="ain-menu">House</a>

                <ul id="ain-menu-sub" class="mk-submenu">
                    <li><a href="#" name="ain-cal">house1</a>
                    </li>
                    <li><a href="#" name="ain-rates">house2</a>
                    </li>
                    <li><a href="#" name="ain-orates">house3</a>
                    </li>

                </ul>
            </div>
            <div class="mk-menu-item"> <a class="menu-head" id="bjt-menu">Jet</a>

                <ul id="bjt-menu-sub" class="mk-submenu">
                    <li><a href="#" name="bjt-cal">Jet1</a>
                    </li>
                    <li><a href="#" name="bjt-rates">Jet2</a>
                    </li>
                    <li><a href="#" name="bjt-orates">Jet3</a>
                    </li>
                </ul>
            </div>
            <div class="mk-menu-item"> <a class="menu-head" id="cnd-menu">Car</a>

                <ul id="cnd-menu-sub" class="mk-submenu">
                    <li><a href="#" name="cnd-cal">Car1</a>
                    </li>
                    <li><a href="#" name="cnd-rates">Car2</a>
                    </li>
                    <li><a href="#" name="cnd-orates">Car3</a>
                    </li>
                </ul>
            </div>
            <div class="mk-menu-item"> <a class="menu-head" id="and-menu">Discord</a>

                <ul id="and-menu-sub" class="mk-submenu">
                    <li><a href="#" name="and-cal">Discord1</a>
                    </li>
                    <li><a href="#" name="and-rates">Discord2</a>
                    </li>
                    <li><a href="#" name="and-orates">Discord3</a>
                    </li>
                </ul>
            </div>
        </div>

JS

jQuery(".menu-head").click(function(a) {
    var myid = jQuery(this).attr("id");
    jQuery("#" + myid + "-sub").toggle(100);
    jQuery(this).toggleClass("mk-selected");
    jQuery(this).closest('.mk-menu-item').siblings().find('ul.mk-submenu').removeClass('mk-selected').slideUp();
    a.preventDefault();
});

jQuery(".mk-submenu li").click(function(b) {
    jQuery(".mk-submenu li").removeClass("active");
    jQuery(this).addClass("active");
    b.preventDefault();
});

CSS

#mk-menu {
    color: #FFF;
    background: #556B80;
    float: center;
    margin-top: 0px;
    position: relative;
    width: 20%;
    font-family: Verdana, Geneva, sans-serif;
    padding-bottom: 39px;
    margin: auto;
    padding-bottom: 50px;
    padding-top: 50px;
}

a.menu-head {
    color: #FFF;
    display: block;
    font-size: 20px;
    margin: 100px 50px 0;
    padding: 5px;
    text-transform: uppercase;
    line-height: 15px
}

a:hover {
    background: #6E8193;
}

a.menu-head:hover {
    cursor: pointer;
}

#mk-menu ul {
    margin: 10px 0 15px 60px;
}

#mk-menu li a {
    color: #FFF;
    text-decoration: none
}

#mk-menu li a:hover {
    color: red;
    text-decoration: none
}

.mk-submenu {
    display: none;
}

.mk-submenu a {
    font-size: large
}

thank you for reading this post.



Solution 1:[1]

first of all, you have a missing closing div and many semicolons are missing in your CSS.

You can assign an "id" to each nav item like for example class="mk-menu-item" give it an id="house-menu", then add an event listener to each one of them in javascript, I'll give you an example to get the idea.

let house = document.getElementById('house-menu');
let jet = document.getElementById('jet-menu');
let car = document.getElementById('car-menu');
let discord = document.getElementById('discord-menu');

house.addEventListener('click',()=>{
    [jet,car,discord].forEach(item =>{
        item.style.display="none";
    })
})
#mk-menu {
  color: #FFF;
  background: #556B80;
  float: center;
  margin-top: 0px;
  position: relative;
  width: 100%;
  font-family: Verdana, Geneva, sans-serif;
  padding-bottom: 39px;
  margin: auto;
  padding-bottom: 50px;
  padding-top: 50px;
}

a.menu-head {
  color: #FFF;
  display: block;
  font-size: 20px;
  margin: 100px 50px 0;
  padding: 5px;
  text-transform: uppercase;
  line-height: 15px
}

a:hover {
  background: #6E8193;
}

a.menu-head:hover {
  cursor: pointer;
}

#mk-menu ul {
  margin: 10px 0 15px 60px;
}

#mk-menu li a {
  color: #FFF;
  text-decoration: none
}

#mk-menu li a:hover {
  color: red;
  text-decoration: none
}

.mk-submenu {
  display: none;
}

.mk-submenu a {
  font-size: large
}
<div id="mk-menu">


    <div>
      <!-- wrapper to separate menu items for jquery -->
      <div class="mk-menu-item" id="house-menu"> <a class="menu-head" id="ain-menu">House</a>

        <ul id="ain-menu-sub" class="mk-submenu">
          <li><a href="#" name="ain-cal">house1</a>
          </li>
          <li><a href="#" name="ain-rates">house2</a>
          </li>
          <li><a href="#" name="ain-orates">house3</a>
          </li>

        </ul>
      </div>
      <div class="mk-menu-item" id="jet-menu"> <a class="menu-head" id="bjt-menu">Jet</a>

        <ul id="bjt-menu-sub" class="mk-submenu">
          <li><a href="#" name="bjt-cal">Jet1</a>
          </li>
          <li><a href="#" name="bjt-rates">Jet2</a>
          </li>
          <li><a href="#" name="bjt-orates">Jet3</a>
          </li>
        </ul>
      </div>
      <div class="mk-menu-item" id="car-menu"> <a class="menu-head" id="cnd-menu">Car</a>

        <ul id="cnd-menu-sub" class="mk-submenu">
          <li><a href="#" name="cnd-cal">Car1</a>
          </li>
          <li><a href="#" name="cnd-rates">Car2</a>
          </li>
          <li><a href="#" name="cnd-orates">Car3</a>
          </li>
        </ul>
      </div>
      <div class="mk-menu-item" id="discord-menu"> <a class="menu-head" id="and-menu">Discord</a>

        <ul id="and-menu-sub" class="mk-submenu">
          <li><a href="#" name="and-cal">Discord1</a>
          </li>
          <li><a href="#" name="and-rates">Discord2</a>
          </li>
          <li><a href="#" name="and-orates">Discord3</a>
          </li>
        </ul>
      </div>
    </div>

Sources

This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.

Source: Stack Overflow

Solution Source
Solution 1