Cet article présente principalement l'exemple de code de jQuery+CSS3 pour implémenter la fonction like. A une très bonne valeur de référence. Regardons ça ensemble
Rendu :
Photo (1) Photo initiale
Photo (2) Après avoir cliqué sur
le code est le suivant :
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>jQuery+CSS3文章点赞功能代码</title> <style type="text/css"> body{ margin:0; padding:0; } .text-content{ min-width:1180px; border-bottom: 1px solid #e7e7e7; border-top: 1px solid #e7e7e7; background: #f4f4f4; } .text-content h1{ text-align:center; font-size: 20px; padding-top: 50px; color: #EB4F38; } .text-content p{ padding: 10px 100px 40px 100px; clear: both; color: #333; display: block; font-family: "Microsoft Yahei","Helvetica Neue",Helvetica,Arial,sans-serif; font-size: 16px; line-height: 1.6; margin: 0 auto; outline: medium none; position: relative; width: 900px; word-wrap: break-word; } .praise{ width:40px; height:40px; margin: 50px auto; cursor: pointer; font-size: 12px; text-align:center; position: relative; } #praise{ display:block; width:40px; height:40px; margin:0 auto; } #praise-txt{ height:25px; line-height:25px; display: block; } .praise img{ width:40px; height:40px; display:block; margin: 0 auto; } .praise img.animation{ animation: myfirst 0.5s; -moz-animation: myfirst 0.5s; -webkit-animation: myfirst 0.5s; -o-animation: myfirst 0.5s; } #add-num{ display:none; } #add-num .add-animation{ color: #000; position:absolute; top:-15px; left: 10px; font-size: 15px; opacity: 0; filter: Alpha(opacity=0); -moz-opacity:0; animation: mypraise 0.5s ; -moz-animation: mypraise 0.5s ; -webkit-animation: mypraise 0.5s ; -o-animation: mypraise 0.5s ; font-style:normal; } .praise .hover , #add-num .add-animation.hover , #praise-txt.hover{ color: #EB4F38; } @keyframes myfirst { 0%{ width:40px; height:40px; } 50%{ width:50px; height:50px; } 100% { width:40px; height:40px; } } @-moz-keyframes myfirst { 0%{ width:40px; height:40px; } 50%{ width:50px; height:50px; } 100% { width:40px; height:40px; } } @-webkit-keyframes myfirst { 0%{ width:40px; height:40px; } 50%{ width:50px; height:50px; } 100% { width:40px; height:40px; } } @-o-keyframes myfirst { 0%{ width:40px; height:40px; } 50%{ width:50px; height:50px; } 100% { width:40px; height:40px; } } @keyframes mypraise { 0%{ top:-15px; opacity: 0; filter: Alpha(opacity=0); -moz-opacity:0; } 25%{ top:-20px; opacity: 0.5; filter: Alpha(opacity=50); -moz-opacity:0.5; } 50%{ top:-25px; opacity: 1; filter: Alpha(opacity=100); -moz-opacity:1; } 75%{ top:-30px; opacity: 0.5; filter: Alpha(opacity=50); -moz-opacity:0.5; } 100% { top:-35px; opacity: 0; filter: Alpha(opacity=0); -moz-opacity:0; } } @-moz-keyframes mypraise { 0%{ top:-15px; opacity: 0; filter: Alpha(opacity=0); -moz-opacity:0; } 25%{ top:-20px; opacity: 0.5; filter: Alpha(opacity=50); -moz-opacity:0.5; } 50%{ top:-25px; opacity: 1; filter: Alpha(opacity=100); -moz-opacity:1; } 75%{ top:-30px; opacity: 0.5; filter: Alpha(opacity=50); -moz-opacity:0.5; } 100% { top:-35px; opacity: 0; filter: Alpha(opacity=0); -moz-opacity:0; } } @-webkit-keyframes mypraise { 0%{ top:-15px; opacity: 0; filter: Alpha(opacity=0); -moz-opacity:0; } 25%{ top:-20px; opacity: 0.5; filter: Alpha(opacity=50); -moz-opacity:0.5; } 50%{ top:-25px; opacity: 1; filter: Alpha(opacity=100); -moz-opacity:1; } 75%{ top:-30px; opacity: 0.5; filter: Alpha(opacity=50); -moz-opacity:0.5; } 100% { top:-35px; opacity: 0; filter: Alpha(opacity=0); -moz-opacity:0; } } @-o-keyframes mypraise { 0%{ top:-15px; opacity: 0; filter: Alpha(opacity=0); -moz-opacity:0; } 25%{ top:-20px; opacity: 0.5; filter: Alpha(opacity=50); -moz-opacity:0.5; } 50%{ top:-25px; opacity: 1; filter: Alpha(opacity=100); -moz-opacity:1; } 75%{ top:-30px; opacity: 0.5; filter: Alpha(opacity=50); -moz-opacity:0.5; } 100% { top:-35px; opacity: 0; filter: Alpha(opacity=0); -moz-opacity:0; } } </style> <script type="text/javascript" src="http://libs.baidu.com/jquery/2.0.0/jquery.min.js"></script> </head> <body> <!--动态点赞开始--> <p class="praise"> <span id="praise"> <img src="http://cdn.attach.qdfuns.com/notes/pics/201612/07/111158kzuumusztigszgsu.png" id="praise-img" /> </span> <span id="praise-txt">145</span> <span id="add-num"><em>+1</em></span> </p> <!--动态点赞结束--> <script> /* @author:Romey * 动态点赞 * 此效果包含css3,部分浏览器不兼容(如:IE10以下的版本) */ $(function(){ $("#praise").click(function(){ var praise_img = $("#praise-img"); var text_box = $("#add-num"); var praise_txt = $("#praise-txt"); var num=parseInt(praise_txt.text()); if(praise_img.attr("src") == ("http://cdn.attach.qdfuns.com/notes/pics/201612/07/111158g2kg4s2gk9hm4fd4.png")){ $(this).html("<img src='http://cdn.attach.qdfuns.com/notes/pics/201612/07/111158kzuumusztigszgsu.png' id='praise-img' class='animation' />"); praise_txt.removeClass("hover"); text_box.show().html("<em class='add-animation'>-1</em>"); $(".add-animation").removeClass("hover"); num -=1; praise_txt.text(num) }else{ $(this).html("<img src='http://cdn.attach.qdfuns.com/notes/pics/201612/07/111158g2kg4s2gk9hm4fd4.png' id='praise-img' class='animation' />"); praise_txt.addClass("hover"); text_box.show().html("<em class='add-animation'>+1</em>"); $(".add-animation").addClass("hover"); num +=1; praise_txt.text(num) } }); }) </script> </body> </html>
Ce qui précède représente l'intégralité du contenu de cet article. J'espère qu'il sera utile à l'étude de chacun. Pour plus de contenu connexe, veuillez faire attention au site Web PHP chinois !
Recommandations associées :
Comment utiliser JS et CSS3 pour créer des effets de fenêtre contextuelle sympas
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!