Html 将鼠标悬停在Twitter引导中的下拉菜单上
如何编写代码,当您将鼠标悬停在使用Twitter Bootstrap 3实现的下拉菜单上时,下拉菜单将显示,用户可以单击扩展下拉菜单的链接 我编写了以下HTML:Html 将鼠标悬停在Twitter引导中的下拉菜单上,html,css,twitter-bootstrap,Html,Css,Twitter Bootstrap,如何编写代码,当您将鼠标悬停在使用Twitter Bootstrap 3实现的下拉菜单上时,下拉菜单将显示,用户可以单击扩展下拉菜单的链接 我编写了以下HTML: <nav> <ul id="mainMenu"> <li><a href="/">Home</a></li> <li class="dropdown"&g
<nav>
<ul id="mainMenu">
<li><a href="/">Home</a></li>
<li class="dropdown">
<a data-toggle="dropdown">Blog<span class="caret"></span></a>
<ul class="dropdown-menu">
<li><a href="/1">1</a></li>
<li><a href="/2">2</a></li>
</ul>
</div>
</li>
</ul>
</nav>
但是,当您将鼠标悬停在下拉菜单中的Blog
菜单上时,下拉菜单不会展开,但如果单击它,菜单会展开
即使你展开菜单,展开的菜单在布局上也是糟糕透顶的,因为在展开的菜单中有多余的空格,可能是因为我使它在某种程度上倾斜(-6度)
此外,展开的菜单位于水平位置,而不是垂直位置。我不知道为什么它是水平放置的,但我可以修复它吗
谢谢
[更新]
由于某些原因,HTML代码没有正确显示。现在,我必须检查如何解决它,如果我知道如何修复它,我会这样做。我在
标签中写了这些供您参考。您可以尝试大量可用的引导相关插件,如
<script>
var bMobile; // true if in mobile mode
// Initiate event handlers
function init() {
// .navbar-toggle is only visible in mobile mode
bMobile = $('.navbar-toggle').is(':visible');
var oMenus = $('.navbar-nav .dropdown'),
nTimer;
if (bMobile) {
// Disable hover events for mobile
oMenus.off();
} else {
// Set up menu hover for desktop mode
oMenus.on({
'mouseenter touchstart': function() {
event.preventDefault();
clearTimeout(nTimer);
oMenus.removeClass('open');
$(this).addClass('open');
},
'mouseleave': function() {
nTimer = setTimeout(function() {
oMenus.removeClass('open');
}, 500);
}
});
}
}
$(document).ready(function() {
// Your other code to run on DOM ready...
init();
});
$(window).resize(init);
</script>
或者这不是你想要的吗?你可以尝试大量可用的引导相关插件,比如
或者这不是你想要的吗?如果你想要超轻的东西,而不需要任何插件或向代码中添加更多属性,那么把这个JS代码放到你的页面中,你的所有下拉列表现在应该在鼠标悬停时打开:
.navbar-nav > li:hover > .dropdown-menu {
display: block;
}
var bMobile;//如果处于移动模式,则为true
//启动事件处理程序
函数init(){
//.导航栏切换仅在移动模式下可见
bMobile=$('.navbar toggle')。是(':visible');
变量oMenus=$('.navbar导航下拉列表'),
恩蒂默;
如果(b移动){
//禁用移动设备的悬停事件
oMenus.off();
}否则{
//设置桌面模式的菜单悬停
奥米努斯({
“mouseenter touchstart”:函数(){
event.preventDefault();
清除超时(nTimer);
网膜移除类(“开放”);
$(this.addClass('open');
},
“mouseleave”:函数(){
nTimer=setTimeout(函数(){
网膜移除类(“开放”);
}, 500);
}
});
}
}
$(文档).ready(函数(){
//要在DOM ready上运行的其他代码。。。
init();
});
$(窗口)。调整大小(初始);
如果您想要超轻量的东西,而不需要任何插件或向代码中添加更多属性,那么将此JS代码放到页面中,您的所有下拉列表现在应该在鼠标悬停时打开:
.navbar-nav > li:hover > .dropdown-menu {
display: block;
}
var bMobile;//如果处于移动模式,则为true
//启动事件处理程序
函数init(){
//.导航栏切换仅在移动模式下可见
bMobile=$('.navbar toggle')。是(':visible');
变量oMenus=$('.navbar导航下拉列表'),
恩蒂默;
如果(b移动){
//禁用移动设备的悬停事件
oMenus.off();
}否则{
//设置桌面模式的菜单悬停
奥米努斯({
“mouseenter touchstart”:函数(){
event.preventDefault();
清除超时(nTimer);
网膜移除类(“开放”);
$(this.addClass('open');
},
“mouseleave”:函数(){
nTimer=setTimeout(函数(){
网膜移除类(“开放”);
}, 500);
}
});
}
}
$(文档).ready(函数(){
//要在DOM ready上运行的其他代码。。。
init();
});
$(窗口)。调整大小(初始);
我花了一段时间才找到它。令人惊讶的是,如果你到处搜索的话,有那么多人发布了无休止的复杂内容,但这些内容都不起作用!这个简单的CSS对我来说很有用,尽管我不能保证它在小型设备上的表现
.dropdown:hover .dropdown-menu {
display: block;
}
我花了一段时间才找到它。令人惊讶的是,如果你到处搜索的话,有那么多人发布了无休止的复杂内容,但这些内容都不起作用!这个简单的CSS对我来说很有用,尽管我不能保证它在小型设备上的表现
.dropdown:hover .dropdown-menu {
display: block;
}
使用下面的CSS可以切换和悬停菜单
它很简单使用下面的CSS来切换和悬停菜单
这很简单如果你能做一把小提琴,我可以帮助你,这一切都是关于CSS如果你能做一把小提琴,我可以帮助你,这一切都是关于CSS的