javascript - 如何让导航栏顺畅流动?

标签 javascript jquery html css

当在导航栏上从一个主题转到另一个主题时,我想要一个元素的下拉菜单,但我希望它从一个元素平滑地流动到另一个元素,而不是让它出现一秒钟的故障。

<nav class="navbar">
<div class="navbar_item" data-navitem="1">
<h3>Link 1</h3>
</div>
<div class="navbar_item" data-navitem="2">
<h3>Link 2</h3>
</div>
<div class="navbar_item" data-navitem="3">
<h3>Link 3</h3>
</div><div class="navbar_item" data-navitem="4">
<h3>Link 4</h3>
</div>

  <div class="navbar_item_subitem closed" data-subnavitem="1">
  <h1>Internal contnet</h1>
  </div>
  <div class="navbar_item_subitem closed" data-subnavitem="2">
  <h1>Internal contnet 2</h1>
</div>



</nav>

CSS:

 .navbar_item{
 background-color: gray;
 width: 20%;
 float:left;
 }

.navbar_item_subitem
{
 overflow-y: hidden;
max-height: 100px; /* approximate max height */
width: 100%;
background: green;
height: 0;
}

JS

$('.navbar_item').hover(
function(){
$('.navbar_item_subitem').css('height',0);
var item = $(this).data("navitem");
$('.navbar_item_subitem[data-subnavitem='+item+']').animate({
  'height':'100'
}, 2000)

},
function(){
var item = $(this).data("navitem");
$('.navbar_item_subitem[data-subnavitem='+item+']').animate({
  'height':'0'
}, 500)
}
)

http://jsfiddle.net/n24ff6xq/

所以我只希望每个链接之间的流程更顺畅,而不是出现空白。谢谢你

最佳答案

试试这个:http://jsfiddle.net/n24ff6xq/1/

$('.navbar_item_subitem').animate({
      'height':'0'
}, 50);

关于javascript - 如何让导航栏顺畅流动?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26837769/

相关文章:

javascript - 初始化后可以更改 OpenSeaDragon 平移选项吗

javascript - 如何删除谷歌地址自动完成中的一些额外细节?

javascript - 隐藏具有 th 和 colspan 的 tr

生成密码输入框的 jQuery 模糊和焦点问题

javascript - $ ("#slider_range").slider 不是函数

jquery-ui - 在表格单元格内存储和访问 div 的数据

jquery - 如何使用 jquery 加载 CSS

html - HTML5 localStorage 长期安全吗?

html - 嵌入字体系列的特殊字符 'ű' 和 'ő' 显示问题

javascript - 转换并检查表示页码的字符串