javascript - 悬停时展开内容

标签 javascript jquery html css

我有一个 html 菜单。 Markdown 必须保持如图所示。需要在“”-链接悬停上展开内容

<div class="container">
  <div class="first-div-in row-menu" data-menu-block="first-div-in">Title</div>
      ..some other buttons..
</div>
<div id="first-div-in" class="menu-in">
  <div class="container" style="display:none;">
    <div class="col-xs-10">
      ... here is content ...
    </div>
  </div>
</div>

问题在于实现。这个想法是,当用户将鼠标悬停在“div”链接上时,它会扩展包含内容的容器。当用户将鼠标位置更改为该容器时,该容器必须仍然可见。

JS:

var hover_menu = function() {
  var parent = $(this);
  var menu_block = $( parent ).data('menu-block');
  $('#' + menu_block).slideToggle('slow');
}
$('.row-menu').on( 'hover', hover_menu );

我的 JS 代码必须在“div”链接悬停时展开容器。将光标位置更改为展开的容器时,容器必须可见。我怎样才能实现这种行为?

最佳答案

尝试这样的事情。在鼠标悬停时,如果当前元素已经可见,则什么都不做。否则,隐藏任何其他打开的部分并显示新的部分。

var hover_menu = function(){
    var $parent = $(this);
    var $menu_block = $('#' + $parent.data('menu-block'));


    if ($menu_block.not(':visible')) {
       $('.menu-in:visible').not($menu_block).slideOut('slow');
       $menu_block.slideIn('slow');
    }
}
$('.row-menu').on( 'mouseover', hover_menu );

关于javascript - 悬停时展开内容,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35023138/

相关文章:

javascript - 用诺克模拟 SOAP 服务

javascript - 如何使用 jquery 添加 img 标签的 alt 属性

javascript - jquery点击iframe中的元素

html - 使列高度调整为图像响应高度(Flexbox)

javascript - 使文本淡入并保持可见,直到鼠标离开容器

javascript - 如何从输入中获取值并使用 jQuery 提交?

javascript - 控制台返回 [Object object] 而不是对象成员

javascript - 仅当我向下滚动时淡入

javascript - 当有带有 CSS 的 Bootstrap 按钮时启用段落的背景颜色 <p>?

html - 滚动框不起作用/滚动时使相对定位的元素在固定元素下消失