Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

302
Visualizações
How can i create multi-submenu in Javascript?

HTML CODES:

<header>
    <nav>
        <ul>
            <li class="asmenu"><a href="#">Menu1 <i class="fa fa-caret-down"></i></a>
                <ul class="submenu deactive">
                <li><a href="#">Menu1-a</a></li>
                <li><a href="#">Menu1-b</a></li>
                <li><a href="#">Menu1-c</a></li>
                <li><a href="#">Menu1-d</a></li>
                </ul>
            </li>
            <li class="asmenu"><a href="#">Menu2 <i class="fa fa-caret-down"></i></a>
                <ul class="submenu deactive">
                <li><a href="#">Menu2-a</a></li>
                <li><a href="#">Menu2-b</a></li>
                <li><a href="#">Menu2-c</a></li>
                <li><a href="#">Menu2-d</a></li>
                </ul>
            </li>
                <li><a href="#">Menu3</a></li>
                <li><a href="#">Menu4</a></li>
                <li><a href="#">Menu5</a></li>
                <li><a href="#">Menu6</a></li>
        </ul>
    </nav>
</header>

CSS CODES:

header nav ul li {
  position: relative;
}

.submenu {
  position: absolute;
  width: 20rem;
  height: 20rem;
  background-color: darkgoldenrod;
  margin-top: 2rem;
  border-radius: 0rem 0rem 2.5rem 0rem;
}

.active {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: space-evenly;
}

.deactive {
  display: none;
}

Question is how can i make submenu using these codes in Javascript . I want to use "toggle" but i didn't it. I tried to a few times but because of i have 2 submenu, i have error always. Firstly i tried to mouseover and mouseout but when i hover with mouse to menu2, it is opening menu1's submenu or anything opening.

about 4 years ago · Juan Pablo Isaza
1 Respostas
Responde à pergunta

0

try this

<!DOCTYPE html>
<html>
<head>
  <meta name="viewport" content="width=device-width, initial-scale=1">
  <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.4.1/css/bootstrap.min.css">
  <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.6.0/jquery.min.js"></script>
  <script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.4.1/js/bootstrap.min.js"></script>
<style>
.dropdown-submenu {
  position: relative;
}

.dropdown-submenu .dropdown-menu {
  top: 0;
  left: 100%;
  margin-top: -1px;
}
</style>
</head>
<body>
   
<div class="container">
  <h2>Multi-Level Dropdowns</h2>
  <p>In this example, we have created a .dropdown-submenu class for multi-level dropdowns (see style section above).</p>
  <p>Note that we have added jQuery to open the multi-level dropdown on click (see script section below).</p>                                        
  <div class="dropdown">
    <button class="btn btn-default dropdown-toggle" type="button" data-toggle="dropdown">Tutorials
    <span class="caret"></span></button>
    <ul class="dropdown-menu">
      <li><a tabindex="-1" href="#">HTML</a></li>
      <li><a tabindex="-1" href="#">CSS</a></li>
      <li class="dropdown-submenu">
        <a class="test" tabindex="-1" href="#">New dropdown <span class="caret"></span></a>
        <ul class="dropdown-menu">
          <li><a tabindex="-1" href="#">2nd level dropdown</a></li>
          <li><a tabindex="-1" href="#">2nd level dropdown</a></li>
          <li class="dropdown-submenu">
            <a class="test" href="#">Another dropdown <span class="caret"></span></a>
            <ul class="dropdown-menu">
              <li><a href="#">3rd level dropdown</a></li>
              <li><a href="#">3rd level dropdown</a></li>
            </ul>
          </li>
        </ul>
      </li>
    </ul>
  </div>
</div>

<script>
$(document).ready(function(){
  $('.dropdown-submenu a.test').on("click", function(e){
    $(this).next('ul').toggle();
    e.stopPropagation();
    e.preventDefault();
  });
});
</script>

</body>
</html>

source

about 4 years ago · Juan Pablo Isaza Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda