jquery中的垂直下拉菜单

时间:2012-03-29 01:17:36

标签: jquery

我想在点击div时显示垂直下拉菜单。假设我在div元素中有一个图像元素

   <div id="menu"><img src="image.png">Menu</div>

在html dom中的其他地方我有列表UL元素

<div id="somediv">
<ul id="menulist">  
<li>Item one  
    <ul>  
        <li>Subitem one</li>  
        <li>Subitem two</li>  
    </ul>  
</li>  
<li>Item two</li>  </ul>  </div>

我正在搜索一个jquery插件,当我说$('#menu')时,可以显示下拉菜单。click - &gt;在图像下显示menulist元素作为菜单

任何帮助都是适当的

2 个答案:

答案 0 :(得分:1)

为什么需要插件?这应该是相对容易的编码。只需在jQuery中使用.hide.show.toggle属性即可在单击该div时切换列表的可见性。如果你希望它是一个上下文菜单(右键单击可见),那么它需要更多的工作,但要注意大多数人在你接管他们的右键单击功能时讨厌它。

答案 1 :(得分:1)

它可以这么简单。

$('#menu').click(function(){
    var $somediv = $('#somediv');
    if($somediv.is(':visible')){
        $somediv.hide();
    }
    else{
        var $this = $(this);
        $('#somediv').css({
           top: $this.offset().top + $this.height(),
           left: $this.offset().left,
           position: 'absolute'//this can be set using css
        }).show();
    }
});