【发布时间】:2014-08-17 12:34:54
【问题描述】:
我想为我的顶部导航设置动画。
目前下拉次只是跳下悬停顶部导航链接。
开发网站:http://goandco.w7.ext.starberry.com
我尝试了以下方法:
<script>
jQuery(document).ready(function() {
jQuery( '.has-drop-down-a' ).hover(
function(){
jQuery(this).children('.drop').slideDown(200);
},
function(){
jQuery(this).children('.drop').slideUp(200);
}
);
});
</script>
我的html类似如下:
<ul id="nav">
<li class="has-drop-down">
<a href="#" class="has-drop-down-a">Search</a>
<div class="drop">...</div>
</li>
</ul>
我需要class=“drop”div以动画向下,而不是瞬间。
编辑:
所以,以下是有效的 - 除了两件事: 1)您必须将鼠标悬停在链接上一次,然后它就会起作用。 2)当您将鼠标向下移动到放置 div 上时,它会折叠
<script>
jQuery('body').ready(function() {
jQuery( '.has-drop-down-a' ).hover(
function(){
jQuery(this).siblings('.drop').slideDown(400);
},
function(){
jQuery(this).siblings('.drop').slideUp(400);
}
);
});
</script>
【问题讨论】:
-
把相关代码放在一个jsFiddle中。不要将链接放到可能在未来反映问题的外部网站。 span>
-
上面的网站链接确实反映了这个问题! span>
-
使用.siblings()而不是.children()。 span>
-
它反映了现在,也许将来其他用户会检查此问题以进一步参考类似问题。
-
此版本中的建议书。 span>
标签: jquery html css jquery-animate