我想为无序列表的宽度设置动画。确定宽度是否显示与图标相关联的文本(在由一些字符表示的小提琴中)。基本上如果显示跨度,菜单的宽度会增加 - 我想为此动作设置动画。
要展开菜单,请按列表中的第一个按钮。 This is the fiddle。
这是jsFiddle的一个小摘录 -
<ul class="nav main-menu">
<li>
<a href="#" id="btnExpandNav">
<i class="fa fa-sliders">A</i>
<span>SEARCH</span>
</a>
</li>
</ul>
这是我的css
ul
{
background-color: yellow;
position: absolute;
-webkit-transition: width 1600ms ease;
-moz-transition: width 1600ms ease;
-ms-transition: width 1600ms ease;
-o-transition: width 1600ms ease;
transition: width 1600ms ease;
}
答案 0 :(得分:1)
您可以将时间范围参数传递给show()
函数。
与show(1000)
一样。
这是一个代码段
var isNavExpanded = false;
$(document).ready(function() {
//nothing
initializeAppUIComponents();
});
function initializeAppUIComponents() {
navMenuChangeStateHandler(false);
$('#btnExpandNav').click(function() {
navMenuChangeStateHandler();
setSubMenuItems();
});
}
function navMenuChangeStateHandler(specificState) {
if (specificState != null)
isNavExpanded = !specificState;
if (isNavExpanded)
$('#mainNavCol > .main-menu > li > a > span').hide();
else {
$('#mainNavCol > .main-menu > li > a > span').show(1000);
}
isNavExpanded = !isNavExpanded;
}
ul {
background-color: yellow;
position: absolute;
}
li {
display: block;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.0/jquery.min.js"></script>
<div id="mainNavCol">
<ul class="nav main-menu">
<li>
<a href="#" id="btnExpandNav"><i class="fa fa-sliders">A</i><span class="magictime slideLeftRetourn">SEARCH</span></a>
</li>
<li>
<a href="#"><i class="fa fa-sliders">B</i><span class="magictime slideLeftRetourn">Supply chain</span></a>
</li>
<li>
<a href="#"><i class="fa fa-gear">C</i><span class="magictime slideLeftRetourn">Warehouse</span></a>
</li>
<li>
<a href="#"><i class="fa fa-heart">D</i><span class="magictime slideLeftRetourn">Shipment</span></a>
</li>
</ul>
</div>