jQuery 悬停导航菜单上的 animate()
jQuery animate() on hover navigation menu
我只是 jQuery 的初学者。我想在我的导航菜单上添加一个动画。我想要的是,我想最初隐藏菜单项文本,并且在悬停时菜单项字体大小也应该随着它的缩放而增加 out.Also 当鼠标离开菜单时它应该回到初始大小 item.How 我可以更改我的代码来完成这个吗?请帮我。这是我的代码:
$(document).ready(function() {
$(".menu_block").hover(function(){
$(this).animate({'width': '127px', 'height': '34px'}, 1500);
}, function(){
$(this).animate({'width': '35px', 'height': '6px'}, 1500);
});
});
.navigation{
position: fixed;
right: 50%;
top: 60px;
z-index: 9999;
}
.menu_block{
background: #33BEB1;
width: 35px;
height: 6px;
margin-bottom: 6px;
display: block;
}
.menu_block a{ color: #33BEB1; display: block; }
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<nav class="navigation">
<ul>
<li class="menu_block"><a href="#about">about</a></li>
<li class="menu_block"><a href="#services">services</a></li>
<li class="menu_block"><a href="#contact">contact</a></li>
</ul>
</nav>
如果您只是想展开和缩回您所在的方块,您可以这样做(如果您希望整个方块展开,然后将 $(this)
更改为 $('.menu_block')
):
$(".menu_block").hover(function() {
$(this).stop().animate({
'width': '127px',
'height': '34px',
'font-size': '20px' // set your large font-size here
}, 1500);
}, function() {
$(this).stop().animate({
'width': '35px',
'height': '6px',
'font-size': '0px'
}, 1500);
});
.navigation {
position: fixed;
right: 50%;
top: 60px;
z-index: 9999;
}
.menu_block {
background: #33BEB1;
width: 35px;
height: 6px;
margin-bottom: 6px;
display: block;
font-size: 0px;
margin-left:auto;
}
.menu_block a {
color: #ffffff;
display: block;
height: 100%;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<nav class="navigation">
<ul>
<li class="menu_block"><a href="#about">about</a>
</li>
<li class="menu_block"><a href="#services">services</a>
</li>
<li class="menu_block"><a href="#contact">contact</a>
</li>
</ul>
</nav>
您可以像这样在 javascript 中添加一个 mouseout 事件:
$(document).ready(function() {
$(".menu_block")
.hover(function(){
$('.menu_block').stop().animate({'width': '127px', 'height': '34px'}, 1500);
})
.mouseout(function () {
$('.menu_block').stop().animate({'width': '35px', 'height': '6px'}, 1500);
});
});
完成 html:https://gist.github.com/anonymous/0aa59ba4796df2d76f39
jsbin: https://jsbin.com/vogowacevo
我只是 jQuery 的初学者。我想在我的导航菜单上添加一个动画。我想要的是,我想最初隐藏菜单项文本,并且在悬停时菜单项字体大小也应该随着它的缩放而增加 out.Also 当鼠标离开菜单时它应该回到初始大小 item.How 我可以更改我的代码来完成这个吗?请帮我。这是我的代码:
$(document).ready(function() {
$(".menu_block").hover(function(){
$(this).animate({'width': '127px', 'height': '34px'}, 1500);
}, function(){
$(this).animate({'width': '35px', 'height': '6px'}, 1500);
});
});
.navigation{
position: fixed;
right: 50%;
top: 60px;
z-index: 9999;
}
.menu_block{
background: #33BEB1;
width: 35px;
height: 6px;
margin-bottom: 6px;
display: block;
}
.menu_block a{ color: #33BEB1; display: block; }
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<nav class="navigation">
<ul>
<li class="menu_block"><a href="#about">about</a></li>
<li class="menu_block"><a href="#services">services</a></li>
<li class="menu_block"><a href="#contact">contact</a></li>
</ul>
</nav>
如果您只是想展开和缩回您所在的方块,您可以这样做(如果您希望整个方块展开,然后将 $(this)
更改为 $('.menu_block')
):
$(".menu_block").hover(function() {
$(this).stop().animate({
'width': '127px',
'height': '34px',
'font-size': '20px' // set your large font-size here
}, 1500);
}, function() {
$(this).stop().animate({
'width': '35px',
'height': '6px',
'font-size': '0px'
}, 1500);
});
.navigation {
position: fixed;
right: 50%;
top: 60px;
z-index: 9999;
}
.menu_block {
background: #33BEB1;
width: 35px;
height: 6px;
margin-bottom: 6px;
display: block;
font-size: 0px;
margin-left:auto;
}
.menu_block a {
color: #ffffff;
display: block;
height: 100%;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<nav class="navigation">
<ul>
<li class="menu_block"><a href="#about">about</a>
</li>
<li class="menu_block"><a href="#services">services</a>
</li>
<li class="menu_block"><a href="#contact">contact</a>
</li>
</ul>
</nav>
您可以像这样在 javascript 中添加一个 mouseout 事件:
$(document).ready(function() {
$(".menu_block")
.hover(function(){
$('.menu_block').stop().animate({'width': '127px', 'height': '34px'}, 1500);
})
.mouseout(function () {
$('.menu_block').stop().animate({'width': '35px', 'height': '6px'}, 1500);
});
});
完成 html:https://gist.github.com/anonymous/0aa59ba4796df2d76f39
jsbin: https://jsbin.com/vogowacevo