比jQueryfuns的点击喜欢心形按钮还要好看的点赞动画效果

比jQueryfuns的点击喜欢心形按钮还要好看的点赞动画效果2714
一款效果非常炫酷的仿Twitter“点赞”红心按钮CSS3动画特效。该“点赞”特效使用一颗心形按钮,在用户点击心形按钮的时候,心形按钮由灰色变为红色,同时会在心形按钮的四周产生类似烟花爆炸的效果。整个烟花爆炸效果实际上是使用背景图片的连续播放来完成的,它使用一张很长的雪碧(Sprite)图片,然后在点击红心按钮是逐帧进行播放。下面是开始时显示第一帧的CSS样式:
.heart {  background: url(images/web_heart_animation.png);  background-position: left;  background-repeat: no-repeat;  height: 50px;  width: 50px;  cursor: pointer;  position: absolute;  left:-14px;  background-size:1450px; //实际背景图片尺寸2900px}.heart:hover{  background-position: right; //显示最后一个红心帧}.likeCount{  margin-top: 13px;  margin-left: 28px;  font-size: 16px;  color: #999999}               
下面的代码是逐帧播放红心背景图片,它使用CSS3 keyframe帧动画来完成。
@-webkit-keyframes heartBlast {  0% {background-position: left;}  100% {background-position: right;}} @keyframes heartBlast {  0% {background-position: left;}  100% {background-position: right;}} .heartAnimation {  -webkit-animation-name: heartBlast; //webkit内核浏览器  animation-name: heartBlast;  -webkit-animation-duration: .8s;  animation-duration: .8s;  -webkit-animation-iteration-count: 1;  animation-iteration-count: 1;  -webkit-animation-timing-function: steps(28); //共28个背景图片帧  animation-timing-function: steps(28);  background-position: right;}                
动画特效中使用jQuery代码来使红心按钮在点击时与相应的总点赞数量进行联动。你可以通过ajax来进行数据库操作。当用户点赞时,总数量加1,取消点赞时,总数量减1。
$('body').on("click",'.heart',function(){    var A=$(this).attr("id");    var B=A.split("like"); //splitting like1 to 1    var messageID=B[1];    $(this).css("background-position","")    var D=$(this).attr("rel");     $.ajax({      type: "POST",      url: "message_like_ajax.php",      data: dataString,      cache: false,      success: function(data){      $("#likeCount"+messageID).html(data);      if(D === 'like') {        $(this).addClass("heartAnimation").attr("rel","unlike"); //applying animation class      }      else{        $(this).removeClass("heartAnimation").attr("rel","like");        $(this).css("background-position","left");      }    }); //ajax end   });//heart click end

也许你还喜欢