简体   繁体   English

使用jQuery在鼠标悬停时自动生成引导程序下拉菜单

[英]Auto generate bootstrap dropdown menu on mouse hover using jquery

I am trying generating a dynamic bootstrap 3 dropdown menu for sharing on mouse hover. 我正在尝试生成动态的Bootstrap 3下拉菜单,以在鼠标悬停时共享。

See this picture 看到这张图片

下拉式菜单

Instead of creating lots of HTML code I decided to generate dynamic menu. 我没有创建大量HTML代码,而是决定生成动态菜单。 Here is what I have done so far: 到目前为止,这是我所做的:

HTML HTML

<div class="dropdown dropup" >
    <a href="#" class="open-dropdown" data-link="http://google.com">Dropdown</a>
    <ul class="dropdown-menu" role="menu">
        <li id="link1">Link One</li>
        <li id="link2">Link Two</li>
        <li class="caret"></li>
    </ul>
</div>

JQuery JQuery的

$(function() {
    $('.open-dropdown').hover(function(){
        $('#link1').html("Share link 1 "+$(this).data('link'));
        $('#link2').html("Share link 2 "+$(this).data('link'));
        $('.open-dropdown').dropdown();
    });
});

Problems 问题

  1. It opens the dropdown menu on click not on MOUSE HOVER. 单击而不是鼠标悬停时将打开下拉菜单。
  2. I can't place <ul class="dropdown-menu" role="menu"> code outside of <div class="dropdown dropup"> container. 我无法将<ul class="dropdown-menu" role="menu">代码放在<div class="dropdown dropup">容器之外。 See this jsfiddle http://jsfiddle.net/LTk3x/ 看到这个jsfiddle http://jsfiddle.net/LTk3x/

What about just using some CSS ? 只使用一些CSS怎么办? :) :)

.dropdown:hover .dropdown-menu{
    display: block;    
}

Here is a jsFiddle: 这是一个jsFiddle:
http://jsfiddle.net/hMp2r/ http://jsfiddle.net/hMp2r/

You can change $('.open-dropdown').dropdown(); 您可以更改$('.open-dropdown').dropdown(); by $('.dropdown-menu').toggle(); 通过$('.dropdown-menu').toggle();

$(function() {
    $('.open-dropdown').hover(function(){
        $('#link1').html("Share link 1 "+$(this).data('link'));
        $('#link2').html("Share link 2 "+$(this).data('link'));
        $('.dropdown-menu').toggle();
    });
});

see http://jsfiddle.net/32xLc/1/ 参见http://jsfiddle.net/32xLc/1/

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM