2017-02-15 101 views
1

我在看答案:jQuery Drop Down Hover Menu选择列表悬停下拉?

首先,非常感谢在那里提供的答案。我能够在一个不断发展的工具中实现这一点,我使用这个工具来为用户提供一种更简单的工作方式。

但是,我有一个问题,我不想在上一个论坛上列出答案......这不是应该如何使用论坛。

在这个工具(我上面提到过)中,这个工具中还有一些<select>下拉菜单,用户表示他们希望在鼠标悬停时删除下拉菜单。所以我修改这个代码,以证明这一点:

$(".DDM").hover(function() { 
 
    $(this).find('ul, select').stop(true, true).slideDown('medium'); 
 
}, function() { 
 
    $(this).find('ul, select').stop(true, true).slideUp('medium'); 
 
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<div class="DDM"> 
 
    <select class="DDM"> 
 
    <option>1</option> 
 
    <option>2</option> 
 
    <option>3</option> 
 
    </select> 
 
</div>

它不工作,所以我想我的第一个问题是:是否有可能做的选择列表悬停下拉菜单在不改变从<select><li>? ?

回答

1

你可以得到物品的数量和调整大小:

$('.DDM').hover(function(){ 
var count = $(this).children().length; 
$(this).attr('size', count); 
}, 
function(){ 
$(this).removeAttr('size'); 
}); 

您可能需要的大小限制,如果你有太多选择。

+0

谢谢!我非常感谢帮助!我向你们学习的越多,我觉得我需要问的问题就越少。所以我很感激没有任何抵触的帮助。我在前面的问题中经历过这种情况。 – LiquidMusic1

+0

没问题,每个人都从某个地方开始,这就是这个网站的内容。有些人忘记了他们曾经有过一次相同的情况。 – PersyJack

0

是的,非常普遍,你会看到下拉菜单使用<ul><li>标签创建的,但相同的功能可以拿出<div><select>(含调整)。你应该选择一种方法并坚持下去,直到你对这些交互有更多的经验。尝试,

$(".myClass").on({ 
    'mouseenter':function() { $('#myMenu').slideToggle(); }, 
    'mouseleave':function() { $('#myMenu').slideToggle(); } 
}); 

这将切换包含子元素的下拉菜单。