保举-3-下拉-开放时,被点击
我需要帮助实现与下面链接相同的导航。
它有我的代码和客户要求。 我正在使用Bootstrap 3
Bootstrap Dropdowns - dropdown.js
jsfiddle链接
请帮忙。
更新小提琴
您只需进行一项更改:
而不是仅为.dropdown.active
监听hide.bs.dropdown
事件, .dropdown.active
将事件处理程序应用于.dropdown
。
基本上,改变:
$(".dropdown.active").on("hide.bs.dropdown",function(e) {
至:
$(".dropdown").on("hide.bs.dropdown",function(e) {
编辑:为了覆盖默认的下拉行为,您需要忽略active
状态,因为可以保留多个li
元素,并且您需要自己切换可见性。
这是更新的演示
码:
$(function(){ // Handle show/hide toggle yourself $(".dropdown").on("click",function(e) { if($(e.currentTarget).hasClass("open")) $(e.currentTarget).toggleClass("open",false); else $(e.currentTarget).toggleClass("open",true); e.preventDefault(); return false; }); // suppressing default bahavior $(".dropdown").on("hide.bs.dropdown", doNothing); $(".dropdown").on("show.bs.dropdown", doNothing); function doNothing(e) { e.preventDefault(); return false; } });
不确定它是否正确,但我做到了
$(function(){ $('.nav').find('li.dropdown.active').addClass('open'); $(".dropdown").on("hide.bs.dropdown",function(e) { e.preventDefault(); return false; }); $('.navbar-main li').on('click', function (){ var me = $(this); $('.navbar-main li').removeClass('open'); $(this).addClass('open'); }); });
和它的工作正常:)