이 기사의 예에서는 jQuery ajax가 기사와 같은 기능을 구현하는 방법을 설명합니다. 참고하실 수 있도록 모든 사람과 공유하세요. 자세한 내용은 다음과 같습니다.
몇일 전, 마이콩이 이 사이트의 오른쪽 상단에 좋아요 기능을 요청해 주셨는데, 이 기능이 모두에게 편리해졌으면 좋겠습니다.
코드는 jQuery PHP로 구현되어 매우 간단합니다.
jQuery 코드:
jQuery(document).ready(function($) { $(".zan").click(function(e){ var $i=$(".zan i"), $b=$("<b>").text("+1"), n=parseInt($i.text()); $b.css({ "bottom":0, "z-index":999, }); $i.text(n+1); $(".zan").append($b); $b.animate({"bottom":100,"opacity":0},1000,function(){$b.remove();}); var d = setInterval(function(){ clearInterval(d); if($(".zan b").length == 1){ $.post("",{zan:$i.text()}) } },1000) e.stopPropagation(); }); });
php 코드:
<?php $path = "zan.txt"; if(isset($_POST['zan'])){ $num = (int)$_POST['zan']; $save = fopen($path,"w"); fwrite($save,$num); fclose($save); echo "good"; exit(); $zan = file_exists($path) ? intval(file_get_contents($path)) : 0; } ?>
html 코드:
<div class="main"> <div class="zan"><em>看官们给了 <i><?php echo $zan; ?></i> 个赞</em></div> </div>
적절한 CSS 스타일 사용:
.main { position: relative; font-size: 10pt; line-height: 18px; margin: 40px auto; width: 800px; height: 170px; -webkit-user-select: none; -moz-user-select: none; -ms-user-select: none; -o-user-select: none; user-select: none;} .zan { position: absolute; top: 20%; left: 45%; width: 160px; height: 110px; background: url("zan.jpg") center no-repeat; cursor: pointer; opacity: 0.85; } .zan:active { opacity: 1; } .zan em { position: absolute; color: #333; font-style: normal; bottom: -15px; width: 100%; text-align: center; } .zan i { font-style: normal; color: #E94F06; } .zan b { position: absolute; color: #E94F06; font-style: normal; bottom: -15px; width: 100%; text-align: center; }
그렇습니다. 간단하게 유지하세요!
전체 코드는 다음과 같습니다.
<?php $path = "zan.txt"; if(isset($_POST['zan'])){ $num = (int)$_POST['zan']; $save = fopen($path,"w"); fwrite($save,$num); fclose($save); echo "good"; exit(); } $zan = file_exists($path) ? intval(file_get_contents($path)) : 0; ?> <!doctype html> <html> <head> <meta charset="utf-8"> <title>我要点赞</title> <style> .main { position: relative; font-size: 10pt; line-height: 18px; margin: 40px auto; width: 800px; height: 170px; -webkit-user-select: none; -moz-user-select: none; -ms-user-select: none; -o-user-select: none; user-select: none;} .zan { position: absolute; top: 20%; left: 45%; width: 160px; height: 110px; background: url("zan.jpg") center no-repeat; cursor: pointer; opacity: 0.85; } .zan:active { opacity: 1; } .zan em { position: absolute; color: #333; font-style: normal; bottom: -15px; width: 100%; text-align: center; } .zan i { font-style: normal; color: #E94F06; } .zan b { position: absolute; color: #E94F06; font-style: normal; bottom: -15px; width: 100%; text-align: center; } </style> </head> <body> <div class="main"> <div class="zan"><em>看官们给了 <i><?php echo $zan; ?></i> 个赞</em></div> </div> <script src="jquery.min.js"></script> <script> jQuery(document).ready(function($) { $(".zan").click(function(e){ var $i=$(".zan i"), $b=$("<b>").text("+1"), n=parseInt($i.text()); $b.css({ "bottom":0, "z-index":999, }); $i.text(n+1); $(".zan").append($b); $b.animate({"bottom":100,"opacity":0},1000,function(){$b.remove();}); var d = setInterval(function(){ clearInterval(d); if($(".zan b").length == 1){ $.post("",{zan:$i.text()}) } },1000) e.stopPropagation(); }); }); </script> </body> </html>
제목에 '좋아요'에는 제한이 없다고 적혀 있으니 마이콩이 약간의 비법을 알려드리겠습니다.
/* 怒赞 */ jQuery.noConflict(); function zan() { setInterval(function () { jQuery(".zan").click(); zan(); }, 600) } zan();
물론, 마이콩과 같은 Accelerate CC를 사용하고 좋아요 요청이 너무 많이 들어오면 차단됩니다! jQuery에서 POST를 취소하지 않는 한
이 기사가 jQuery 프로그래밍에 종사하는 모든 사람에게 도움이 되기를 바랍니다.