No puedo hacer que el menú desplegable de bootstrap funcione. Aquí está mi html para nav:
<ul class='nav'>
<li class='active'>Home</li>
<li class='dropdown'>
<a class="dropdown-toggle" data-toggle="dropdown" href='#'>Personal asset loans</a>
<ul class="dropdown-menu" role="menu">
<li><a href="#">asds</a></li>
<li class="divider"></li>
</ul>
</li>
<li>Payday loans</li>
<li>About</li>
<li>Contact</li>
</ul>
Y aquí están los guiones:
<script type="text/javascript" src="js/bootstrap/bootstrap-dropdown.js"></script>
<script>
$(document).ready(function(){
$('.dropdown-toggle').dropdown()
});
</script>
¿Qué estoy haciendo mal? ¡Gracias por tus respuestas!
html
drop-down-menu
twitter-bootstrap
hjuster
fuente
fuente
Gruntfile.js
que cambia algunas de las rutas en eljsFileList
... Actualizar las rutas y ejecutar las tareas de Grunt apropiadas (grunt dev / grunt build / etc) resolvió mi problema.bootstrap.min.js
yjquery
Respuestas:
Demostración de trabajo: http://codebins.com/bin/4ldqp73
prueba esto
<ul class='nav'> <li class='active'>Home</li> <li> <div class="dropdown"> <a class="dropdown-toggle" data-toggle="dropdown" href="#">Personal asset loans</a> <ul class="dropdown-menu" role="menu" aria-labelledby="dLabel"> <li><a href="#">asds</a></li> <li class="divider"></li> </ul> </div> </li> <li>Payday loans</li> <li>About</li> <li>Contact</li> </ul>
fuente
Yo tuve el mismo problema. Después de un par de horas de resolución de problemas, descubrí que,
tuve
<script type="text/javascript" src="Scripts/bootstrap.min.js"></script> <script type="text/javascript" src="Scripts/jquery-2.1.1.min.js"></script>
en vez de,
<script type="text/javascript" src="Scripts/jquery-2.1.1.min.js"></script> <script type="text/javascript" src="Scripts/bootstrap.min.js"></script>
Espero que esto ayude a alguien
fuente
Tuve el mismo problema cuando incluí
bootstrap.min.js
dos veces. Quitó uno de ellos y comenzó a funcionar.fuente
Para su información: Si tiene bootstrap.js, usted debe no añadir arranque-dropdown.js.
No estoy seguro del resultado con bootstrap.min.js.
fuente
bootstrap.js
ybootstrap.min.js.
. Cuando eliminé este último, funciona.js/bootstrap.js
así comojs/dropdown.js
Para su estilo, debe incluir los archivos css de bootstrap, generalmente justo antes del
</head>
elemento<link href="css/bootstrap.css" rel="stylesheet">
A continuación, deberá incluir los archivos js, se recomienda incluirlos al final del documento, generalmente antes de que las
</body>
páginas se carguen más rápido.<script src="js/jquery.js"></script> <script src="js/bootstrap.js"></script>
fuente
Agregue las siguientes líneas dentro de las etiquetas del cuerpo.
<!-- jQuery (necessary for Bootstrap's JavaScript plugins) --> <script src="https://code.jquery.com/jquery.js"></script> <!-- Include all compiled plugins (below), or include individual files as needed --> <script src="js/bootstrap.min.js"></script>
fuente
tienes que importar estos archivos a
<head></head>
tu html.<script src="http://code.jquery.com/jquery-1.11.0.min.js"></script> <script src="http://code.jquery.com/jquery-migrate-1.2.1.min.js"></script> <link rel="stylesheet" href="http://maxcdn.bootstrapcdn.com/bootstrap/3.2.0/css/bootstrap.min.css"> <script src="//maxcdn.bootstrapcdn.com/bootstrap/3.2.0/js/bootstrap.min.js"></script>
fuente
¿Has incluido
jquery.js
?Además, compare esta línea de código con la suya:
<a class="dropdown-toggle" data-toggle="dropdown" href="#">Personal asset loans<b class="caret"></b></a>
Vea esta versión que funciona bien.
<!DOCTYPE html> <html> <head> <meta charset="utf-8" /> <title>Bootstrap dropdown</title> <link href="css/bootstrap.css" rel="stylesheet" type="text/css" /> </head> <body> <div class="navbar"> <div class="navbar-inner"> <div class="container"> <ul class="nav"> <a class="brand" href="#">w3resource</a> <li class="active"><a href="#">Home</a></li> <li><a href="#">Blog</a></li> <li><a href="#">About</a></li> <li><a href="#">Contact</a></li> <li class="dropdown" id="accountmenu"> <a class="dropdown-toggle" data-toggle="dropdown" href="#">Tutorials<b class="caret"></b></a> <ul class="dropdown-menu"> <li><a href="#">PHP</a></li> <li><a href="#">MySQL</a></li> <li class="divider"></li> <li><a href="#">JavaScript</a></li> <li><a href="#">HTML5</a></li> </ul> </li> </ul> </div> </div> </div> <div class="container-fluid"> <h1>Dropdown Example</h1> </div> <script type="text/javascript" src="js/jquery-latest.js"></script> <script type="text/javascript" src="js/bootstrap.js"></script> <script type="text/javascript"> $(document).ready(function () { $('.dropdown-toggle').dropdown(); }); </script> </body> </html>
fuente
Deben incluirse tanto bootstrap como jquery:
<link type="text/css" href="/{ProjectName}/css/ui-lightness/jquery-ui-1.8.18.custom.css" rel="stylesheet" /> <script type="text/javascript" src="/{ProjectName}/js/jquery-x.x.x.custom.min.js"></script> <link type="text/css" href="/{ProjectName}/css/bootstrap.css" rel="stylesheet" /> <script type="text/javascript" src="/{ProjectName}/js/bootstrap.js"></script>
NOTA: ¡la versión de jquery-xxxmin.js debe ser la versión 2.xx !
fuente
Lo descubrí y la forma más sencilla de hacerlo es simplemente copiar y pasar el CDN del enlace de arranque que se puede encontrar en https://www.bootstrapcdn.com/ y los scripts de Jquery CDN que se pueden encontrar aquí https: // code.jquery.com/ y después de copiar los enlaces, los enlaces de arranque se pegan en el encabezado de HTML y el script de Jquery se pega en el cuerpo de HTML como en el siguiente ejemplo:
<!DOCTYPE html> <html> <head> <title>Purrfect Match Landing Page</title> <!-- Latest compiled and minified CSS --> <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css"> <!--<link rel="stylesheet" href="griddemo.css"> <!-- Optional theme --> <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap-theme.min.css"> <link href="https://maxcdn.bootstrapcdn.com/font-awesome/4.7.0/css/font-awesome.min.css" rel="stylesheet"> </head> <body> <!-- Latest compiled and minified JavaScript --> <script src="https://code.jquery.com/jquery-3.1.1.js"></script> <script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js"> </script> </body> </html>
Para mí funciona perfecto espero que funcione también para ti :)
fuente
</body>
etiquetas lo pongan en funcionamiento.Prueba esto en la sección principal
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.min.js"></script> <script src="//netdna.bootstrapcdn.com/bootstrap/3.1.1/js/bootstrap.min.js"></script> <link rel="stylesheet" type="text/css" href="//netdna.bootstrapcdn.com/bootstrap/3.1.1/css/bootstrap.min.css">
fuente
Aquí lo que hice es .....
Simplemente eliminé bootstrap.min.js de mi proyecto y agregué bootstrap.js y comenzó a funcionar ........
bundles.Add(new ScriptBundle("~/bundles/bootstrap").Include( "~/Scripts/bootstrap.js" //"~/Scripts/bootstrap.min.js"));
fuente
Prueba este código:
<html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <meta http-equiv="X-UA-Compatible" content="ie=edge"> <title>Bootstrap Tutorial</title> <link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.3.1/css/bootstrap.min.css"> </head> <body> <h1>Welcome to Bootstrap</h1> <div class="dropdown"> <button class="btn btn-secondary dropdown-toggle" type="button" id="dropdownMenuButton" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> Dropdown button </button> <div class="dropdown-menu" aria-labelledby="dropdownMenuButton"> <a class="dropdown-item" href="#">Action</a> <a class="dropdown-item" href="#">Another action</a> <a class="dropdown-item" href="#">Something else here</a> </div> </div> <script src="https://code.jquery.com/jquery.js"></script> <script src="https://stackpath.bootstrapcdn.com/bootstrap/4.3.1/js/bootstrap.bundle.min.js"></script> <script src="https://stackpath.bootstrapcdn.com/bootstrap/4.3.1/js/bootstrap.min.js"></script> </body> </html>
fuente
Tendrá que verificar los archivos / propiedades css en conflicto, por ejemplo, podría tener contenido de estilo personalizado ".nav" en otro lugar, intente deshabilitar sus propios archivos css y verifique si eso funciona, luego verifique qué archivo o estilo personalizado hace que los conflictos también se aseguren está incluyendo bootstrap.min.js en su código
fuente
Tuve un problema similar solo para observar que había agregado el script de arranque dos veces y el segundo script de arranque estaba después de arriba del script de jquery.
Solución:
fuente
Copie y pegue debajo de jQuery
<script>
y la hoja de estilo<link>
en su<head>
para asegurarse de que está cargando todos los archivos necesarios.Simplemente pegue la siguiente línea para probar
<script src="//ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script> <script src="//netdna.bootstrapcdn.com/bootstrap/4.3.1/js/bootstrap.min.js"></script> <link rel="stylesheet" type="text/css" href="//netdna.bootstrapcdn.com/bootstrap/4.3.1/css/bootstrap.min.css">
Ahora prueba
Aún así, si no funciona, consulte el sitio web de bootstrap, tienen una implementación de muestra.
https://getbootstrap.com/docs/4.3/components/navbar/#supported-content
fuente
Para la última versión de Bootstrap, necesitará Popper.js
<script src="http://code.jquery.com/jquery-1.11.0.min.js"></script> <link rel="stylesheet" href="http://maxcdn.bootstrapcdn.com/bootstrap/3.2.0/css/bootstrap.min.css"> <script src="//maxcdn.bootstrapcdn.com/bootstrap/3.2.0/js/bootstrap.min.js"></script> <script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.12.9/umd/popper.min.js"></script>
Copie el enlace en la sección Fin del cuerpo justo antes de la
<body>
etiqueta, dentro de la<Head>
etiqueta.fuente
Acabo de agregar
JS
parte debootstrap
a mi página de índice, luego funcionóPegue esto, si está utilizando la última versión de bootstrap
<script src="https://code.jquery.com/jquery-3.5.1.slim.min.js" integrity="sha384-DfXdz2htPH0lsSSs5nCTpuj/zy4C+OGpamoFVy38MVBnE+IbbVYUew+OrCXaRkfj" crossorigin="anonymous"></script> <script src="https://cdn.jsdelivr.net/npm/[email protected]/dist/js/bootstrap.bundle.min.js" integrity="sha384-ho+j7jyWK8fNQe+A12Hb8AhRq26LrZ/JpcUGGOn+Y7RsweNrtN/tE3MoK7ZeZDyx" crossorigin="anonymous"></script>
fuente
Tuve el mismo problema que me trajo aquí.
Mi problema: estaba usando la versión recomendada de jquery 1.12.0 como mi archivo de script jquery.
Solución: reemplazó el script jquery con la versión jquery 2.2.0.
Eso me resolvió.
fuente
Para mí, fue un problema de CORS. quite
crossorigin="anonymous"
de mis etiquetas script de importación, y comenzó a trabajar de nuevo.Por cierto, las últimas etiquetas de script, en el orden correcto, siempre se pueden encontrar aquí: https://getbootstrap.com/
Editar: Aparentemente, agregar
defer
a lascript
etiqueta también romperá todas las ventajas de Bootstrap.fuente
Copie / pegue el enlace CSS seguido del enlace JS desde el sitio de arranque aquí . Entonces el menú desplegable debería funcionar.
Mi página se ve así:
<html> <head> <meta charset="utf-8"> <link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.3.1/css/bootstrap.min.css" integrity="sha384-ggOyR0iXCbMQv3Xipma34MD+dH/1fQ784/j6cY/iJTQUOhcWr7x9JvoRxT2MZw1T" crossorigin="anonymous"> <script src="https://code.jquery.com/jquery-3.3.1.slim.min.js" integrity="sha384-q8i/X+965DzO0rT7abK41JStQIAqVgRVzpbzo5smXKp4YfRvH+8abtTE1Pi6jizo" crossorigin="anonymous"></script> <script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.14.7/umd/popper.min.js" integrity="sha384-UO2eT0CpHqdSJQ6hJty5KVphtPhzWj9WO1clHTMGa3JDZwrnQq4sF86dIHNDz0W1" crossorigin="anonymous"></script> <script src="https://stackpath.bootstrapcdn.com/bootstrap/4.3.1/js/bootstrap.min.js" integrity="sha384-JjSmVgyd0p3pXB1rRibZUAYoIIy6OrQ6VrjIEaFf/nJGzIxFDsf4x0xIM+B07jRM" crossorigin="anonymous"></script> <title>Website Title</title> </head> <body> <div id="content" /> <nav class="navbar navbar-expand-lg navbar-light bg-light"> <a class="navbar-brand" href="#">Navbar</a> <button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#navbarSupportedContent" aria-controls="navbarSupportedContent" aria-expanded="false" aria-label="Toggle navigation"> <span class="navbar-toggler-icon"></span> </button> <div class="collapse navbar-collapse" id="navbarSupportedContent"> <ul class="navbar-nav mr-auto"> <li class="nav-item active"> <a class="nav-link" href="#">Home <span class="sr-only">(current)</span></a> </li> <li class="nav-item"> <a class="nav-link" href="#">Link</a> </li> <li class="nav-item dropdown"> <a class="nav-link dropdown-toggle" href="#" id="navbarDropdown" role="button" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> Dropdown </a> <div class="dropdown-menu" aria-labelledby="navbarDropdown"> <a class="dropdown-item" href="#">Action</a> <a class="dropdown-item" href="#">Another action</a> <div class="dropdown-divider"></div> <a class="dropdown-item" href="#">Something else here</a> </div> </li> <li class="nav-item"> <a class="nav-link disabled" href="#">Disabled</a> </li> </ul> <form class="form-inline my-2 my-lg-0"> <input class="form-control mr-sm-2" type="search" placeholder="Search" aria-label="Search"> <button class="btn btn-outline-success my-2 my-sm-0" type="submit">Search</button> </form> </div> </nav> </body> </html>
(Barra de navegación desde aquí )
fuente
Verifique la biblioteca popper.js porque tuve el mismo problema, puede encontrar los CDN de bootstrap, jquery y popper en el menú desplegable https://getbootstrap.com/ o simplemente copie las siguientes etiquetas de script
fuente
Mi (mismo) problema surgió cuando mezclé las versiones CSS y Bootstrap. Estaba usando la versión 3 bootstrap.min.js con la versión 4.5 bootstrap.min.css
Si cargó o sobrescribió un montón de archivos css y js en su carpeta estática recientemente, sería un buen lugar para comenzar.
Buena suerte.
fuente
Lo configuré con Angular 7, jQuery 3.4.1, Popper 1.12.9 y Bootstrap 4.3.1, nada me funcionaba hasta que hice este pequeño truco en estilos:
.dropdown.show .dropdown-menu { opacity: 1 !important; }
HTML tiene este aspecto:
<nav class="navbar navbar-expand-lg navbar-dark fixed-top py-1"> <div class="container-fluid"> <ul class="navbar-nav"> <li class="nav-item dropdown"> <button class="btn btn-secondary dropdown-toggle" type="button" data-toggle="dropdown" aria-haspopup="true" id="dropdown-id" aria-expanded="false">Menu</button> <div class="dropdown-menu" aria-labelledby="dropdown-id"> <a class="dropdown-item" [routerLink]='["/"]'>Main page</a> <a class="dropdown-item" [routerLink]='["/about"]'>About</a> <div class="dropdown-divider"></div> <a class="dropdown-item" [routerLink]='["/about/terms"]'>Terms</a> <a class="dropdown-item" [routerLink]='["/about/privacy"]'>Privacy</a> </div> </li> </ul> </div> </nav>
fuente