首先感谢你在小组中接受我。 我需要有关jQuery动画的问题的帮助。 这是我在这个模板的导航菜单中的项目上找到的动画,模板怪物。
http://www.templatemonster.com/demo/40492.html
显然这些是在画布上移动并在某个时刻逐渐消失的两个图像。
研究jQuery的例子我看到使用动画属性top(css)获得了部分效果。但不幸的是,我动画的元素并没有像链接中显示的那样逐渐消失。
请帮助我理解如何使用jQuery实现相同的效果。
答案 0 :(得分:0)
这是一个简单的例子:http://jsfiddle.net/qtdtL/。请注意,带有“top”动画的元素的位置为:fixed。
$("nav").click(function() {
var el = $(this);
var elTop = el.position().top == 0 ? "-70px" : "0";
el.animate({top: elTop});
});
答案 1 :(得分:0)
基本上你添加
div
{
transition: all 0.5s ease;
-webkit-transition: all 0.5s ease; /* Safari */
}
第一个属性告诉应该在更改时应该动画的更改类型,第二个属性告诉它应该花多长时间和第三个时间,如果需要,还有第四个用于延迟的
答案 2 :(得分:0)
您可以按照以下方式制作。
@font-face {
font-family: 'Six Caps';
font-style: normal;
font-weight: 400;
src: local('Six Caps'), local('SixCaps'), url(http://themes.googleusercontent.com/static/fonts/sixcaps/v5/tMrhQDUBAHnnGuM33-yobPesZW2xOQ-xsNqO47m55DA.woff) format('woff');
}
.clear{clear:both;}
.nav{}
.menubox{width:200px;float:left;margin:0px 10px;height:80px;overflow:hidden;position:relative;font-family: 'Six Caps', sans-serif;line-height: 80px;color: #161616;font-size: 80px;color:#000;display:block;cursor:pointer;}
.menubox > span{width:100%;height:80px;display:block;position:absolute;text-align:center;}
.menubox > span.default-txt{top:0px;left:0px;}
.menubox > span.hover-txt{top:80px;left:0px;color:red;}
<div class="nav">
<a class="menubox">
<span class="default-txt">menu</span>
<span class="hover-txt">menu</span>
</a>
<a class="menubox">
<span class="default-txt">menu</span>
<span class="hover-txt">menu</span>
</a>
<a class="menubox">
<span class="default-txt">menu</span>
<span class="hover-txt">menu</span>
</a>
<a class="menubox">
<span class="default-txt">menu</span>
<span class="hover-txt">menu</span>
</a>
<div class="clear"></div>
</div>
$(document).ready(function(){
$('.menubox').mouseenter(function(){
$(this).children('.default-txt').stop(true,true).animate({top:'-100px'});
$(this).children('.hover-txt').stop(true,true).animate({top:'0px'});
}).mouseleave(function(){
$(this).children('.default-txt').stop(true,true).animate({top:'0px'});
$(this).children('.hover-txt').stop(true,true).animate({top:'100px'});
});
});