我正在尝试研究如何在悬停在一个 div 上时显示隐藏的剪切(facebook、google+、twitter)div。
以右上方分享圆形 div 动画为例:http ://www.gethyapp.com/
请看看我做了什么:http: //goo.gl/6XDM8
这是我在代码中所做的:
HTML
<div class="share">share
<div class="line"></div>
<div class="facebook">fb</div>
<div class="google-plus">g+</div>
<div class="twitter">t</div>
</div>
CSS
.share{
background-color: #DA251D;
width: 50px;
height: 50px;
-webkit-border-radius: 50%;
-moz-border-radius: 50%;
border-radius: 50%;
position: relative;
}
.share .facebook,
.share .google-plus,
.share .twitter,
.share .line {
display:none;
}
.facebook{
background-color: #FFFF00;
width: 0px;
height: 0px;
-webkit-border-radius: 50%;
-moz-border-radius: 50%;
border-radius: 50%;
opacity: 0;
}
.google-plus{
background-color: #FFFF00;
width: 0px;
height: 0px;
-webkit-border-radius: 50%;
-moz-border-radius: 50%;
border-radius: 50%;
opacity: 0;
}
.twitter{
background-color: #FFFF00;
width: 0px;
height: 0px;
-webkit-border-radius: 50%;
-moz-border-radius: 50%;
border-radius: 50%;
opacity: 0;
}
.line{
width: 1px;
height: 200px;
background-color: #000;
position: absolute;
left: 30px;
}
JS
$(function(){
$(".share").hover(function(){
$(this).find(".line").delay(50).fadeIn().animate({width: 1, height: 200, opacity: 1, top:10},200);
$(this).find(".facebook").delay(100).fadeIn().animate({width: 32, height: 32, opacity: 1},400);
$(this).find(".google-plus").delay(300).fadeIn().animate({width: 32, height: 32, opacity: 1},400);
$(this).find(".twitter").delay(500).fadeIn().animate({width: 32, height: 32, opacity: 1},400);
}, function(){
$(this).find(".line").delay(50).fadeIn().animate({width: 1, height: 0, opacity: 0, top:-10},200)
$(this).find(".facebook").delay(500).animate({width: 0, height: 0, opacity: 0},400);
$(this).find(".google-plus").delay(300).animate({width: 0, height: 0, opacity: 0},400);
$(this).find(".twitter").delay(100).animate({width: 0, height: 0, opacity: 0},400);
});
});
当您将鼠标悬停在共享框上时,如何制作它旁边会出现另一个剪切框?