Estou tendo problemas para fazer meus menus suspensos funcionarem. Posso fazer com que a barra de navegação apareça perfeitamente, mas quando clico em "Dropdown" (qualquer um deles), o menu suspenso não é exibido. Eu tentei procurar outros posts sobre isso, mas nada que resolvesse os problemas de todos ajudou. Copiei o código-fonte direto do site do bootstrap, mas não consigo fazê-lo funcionar na minha máquina. Alguém tem alguma ideia? Estou olhando para ele há uma hora e não consigo descobrir qual é o problema.
<head>
<script src="resource/js/jquery-1.11.0.js"></script>
<script src="resources/js/bootstrap.js"></script>
<script type="text/javascript">
$(document).ready(function() {
$('dropdown-toggle').dropdown()
});
</script>
</head>
<body>
<nav class="navbar navbar-default" role="navigation">
<div class="container-fluid">
<!-- Brand and toggle get grouped for better mobile display -->
<div class="navbar-header">
<button type="button" class="navbar-toggle" data-toggle="collapse" data- target="#bs-example-navbar-collapse-1">
<span class="sr-only">Toggle navigation</span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
</button>
<a class="navbar-brand" href="#">Brand</a>
</div>
<!-- Collect the nav links, forms, and other content for toggling -->
<div class="collapse navbar-collapse" id="bs-example-navbar-collapse-1">
<ul class="nav navbar-nav">
<li class="active"><a href="#">Link</a></li>
<li><a href="#">Link</a></li>
<li class="dropdown">
<a href="#" class="dropdown-toggle" data-toggle="dropdown">Dropdown <b class="caret"></b></a>
<ul class="dropdown-menu" role="menu">
<li><a href="#">Action</a></li>
<li><a href="#">Another action</a></li>
<li><a href="#">Something else here</a></li>
<li class="divider"></li>
<li><a href="#">Separated link</a></li>
<li class="divider"></li>
<li><a href="#">One more separated link</a></li>
</ul>
</li>
</ul>
<form class="navbar-form navbar-left" >
<div class="form-group">
<input type="text" class="form-control" placeholder="Search">
</div>
<button type="submit" class="btn btn-default">Submit</button>
</form>
<ul class="nav navbar-nav navbar-right">
<li><a href="#">Link</a></li>
<li class="dropdown">
<a href="#" class="dropdown-toggle" data-toggle="dropdown">Dropdown <b class="caret"></b></a>
<ul class="dropdown-menu">
<li><a href="#">Action</a></li>
<li><a href="#">Another action</a></li>
<li><a href="#">Something else here</a></li>
<li class="divider"></li>
<li><a href="#">Separated link</a></li>
</ul>
</li>
</ul>
</div><!-- /.navbar-collapse -->
javascript
jquery
html
css
twitter-bootstrap
user2540528
fonte
fonte
Respostas:
Talvez tente com
e veja se funciona.
fonte
jquery-1.11.0.js
ou não existe.Eu tinha um projeto bootstrap + rails e o menu suspenso funcionou bem. Eles pararam de trabalhar após uma atualização ...
Esta é a solução que corrigiu o problema, adicione o seguinte ao arquivo .js:
fonte
Solução 100% funcional
basta colocar seu link Jquery primeiro de todos os links js e css
Exemplo correto
Exemplo errado!
fonte
Coloque o link jquery js antes do link js bootstrap assim:
ao invés de:
fonte
Put the jquery css ...
>Put the jquery js ...
De acordo com getBootstrap.com, dropdowns são construídos na biblioteca Popper.js de terceiros. Portanto, se o menu suspenso não funcionar ao clicar, mas apenas ao passar o mouse sobre ele, inclua popper.js, bootstrap.js e bootstrap.css. Não incluir popper.js antes de incluir pacotes de bootstrap pode ser um dos motivos.
https://getbootstrap.com/docs/4.0/components/dropdowns/
fonte
Enfrentei isso enquanto estava usando ASP .NET Forms. A solução que usei foi excluir ou comentar as referências jQuery e Bootstrap da
<asp:ScriptManager runat="server">
página mestra. Parece que isso cria um conflito com as referências jQuery e Bootstrap que você colocou no<header>
.fonte
No caso de alguém ainda enfrentar o mesmo problema, certifique-se de verificar o código-fonte da sua página de visualização em seu navegador para verificar se todos os arquivos jquery e bootstrap estão carregados e os caminhos para o arquivo estão corretos. Mais importante! certifique-se de usar o arquivo jquery estável mais recente.
fonte
Talvez alguém lá fora possa se beneficiar com isso:
Resumo (também conhecido como tl; dr)
Os menus suspensos de bootstrap pararam de cair devido à atualização de uma
django-bootstrap3
versão6.2.2
para11.0.0
.fundo
Encontramos um problema semelhante em um
django
site legado que depende muito dobootstrap
throughdjango-bootstrap3
. O site sempre funcionou bem e continuou a funcionar em produção, mas não em nosso sistema de teste local. Não havia mudanças óbvias relacionadas no código, então um problema de dependência era o mais provável.Sintomas
Ao visitar o site no servidor de teste django local , parecia perfeitamente OK à primeira vista: estilo / layout usando
bootstrap
como esperado, incluindo a barra de navegação. No entanto, todos os menus suspensos falharam.Sem erros no console do navegador. Todos os arquivos estáticos
js
ecss
foram carregados com êxito e a funcionalidade de outros pacotes confiáveisjquery
funcionou conforme o esperado.Solução
Descobrimos que o
django-bootstrap3
pacote em nosso ambiente python local foi atualizado para a versão mais recente11.0.0
, enquanto o site foi construído usando6.2.2
.Reverter para
django-bootstrap3==6.2.2
resolver o problema para nós, embora eu não tenha ideia do que exatamente o causou.fonte
Estou usando o Rails 4.0 e tive o mesmo problema
Aqui está minha solução que passou no teste
adicionar ao Gemfile
corre
em seguida, adicione a app / assets / javascripts / application.js
Então a lista suspensa deve funcionar
A propósito, a solução de Chris também funciona para mim.
Mas acho que está menos de acordo com a ideia de pipeline de ativos
fonte
Parece que há mais a ser feito no Rails 4.
Dentro de você adicionar Gemfile.
gem 'bootstrap-sass', '~> 3.2.0.2'
como visto aqui
Em seguida, você precisa executar
$ bundle install
Esta é a parte que ninguém mencionou
Abra seu arquivo config / application.rb
adicione isso antes do penúltimo fim
config.assets.precompile + =% w (*. png * .jpg * .jpeg * .gif)
como visto aqui cerca de 20% na página.
Em seguida, crie um arquivo custom.css.scss neste diretório
app / assets / stylesheets
como visto aqui um pouco mais abaixo da tarefa acima
Dentro desse arquivo inclua
@import "bootstrap";
Agora pare o servidor e reinicie e tudo deve funcionar bem.
Tentei executar o bootstrap sem usar uma gema, mas não funcionou para mim.
Espero que ajude alguém!
fonte
Acho que é a questão da rota do seu arquivo de rota. Nem o bootstrap nem o arquivo JQuery.
fonte
No meu caso, desativar as extensões do Chrome corrigiu isso. Eu os removi do Chrome um por um até encontrar o culpado.
Como sou o autor da extensão ofensiva do Chrome, acho melhor consertar a extensão!
fonte
Minha versão de bootstrap estava apontando para bootstap4-alpha,
alterado para 4-beta
e começou a funcionar
fonte
o problema é que href é href = "#" você deve remover href = "#" em todas as tags
fonte
Para o Bootstrap 4, você precisa de uma biblioteca adicional. Se você ler o console do navegador, o Bootstrap imprimirá uma mensagem de erro informando que você precisa dele para que o menu suspenso funcione.
fonte
em projetos angulares, adicionamos angular-cli.json ou angular.json a estas linhas:
fonte
Tentei todas as respostas acima e a única versão que funciona para mim é a jquery 1.11.1 . Tentei com todas as outras versões 1.3.2, 1.4.4, 1.8.2, 3.3.1 e o menu suspenso da barra de navegação não funciona.
fonte
Se você enfrentar o problema no Ruby on Rails , a solução completa é fornecida pelo arquivo leia-me do Bootstrap Ruby Gem .
ou em suma:
application.css
paraapplication.scss
@import "bootstrap";
gem 'jquery-rails'
aGemfile
menos que exista.//= require jquery3 //= require popper //= require bootstrap //= require bootstrap-sprockets
aapplication.js
.fonte