這次帶給大家JS實作評價星級,JS實作評價星級的注意事項有哪些,下面就是實戰案例,一起來看一下。
雖然簡單,還是有幾個注意的地方:
# 1. 未點擊時的hover效果,星星會隨滑鼠移動亮起來喔。
2. 點選後關閉hover效果。
3. 點選同一顆星星,星星可以隨時換色。
特定程式碼展示:
<!doctype html> <html> <head> <meta charset="UTF-8"> <title></title> <meta name="viewport"content="width=device-width,initial-scale=1,minimum-scale=1,maximum-scale=1,user-scalable=no"/> </head> <style type="text/css"> .stars{ white-space: nowrap; text-align: center; margin-top: 20px; margin-bottom: 20px; } .stars li{ display: inline-block; color:#ADADAD; font-size: 40px; } </style> <body> <ul class="stars"> <li>★</li> <li>★</li> <li>★</li> <li>★</li> <li>★</li> </ul> <script src="../../js/common/jquery-git.js"></script> <script> $(function() { //为星星设置hover效果 varisClicked =false; varbeforeClickedIndex = -1; varclickNum = 0;//点击同一颗星次数 $('li').hover( function() { if(!isClicked) { $(this).css('color','#F0AD4E'); varindex = $(this).index(); for(vari = 0; i <= index; i++) { $('li:nth-child('+ i +')').css('color','#F0AD4E'); } } }, function() { if(!isClicked) { $('li').css('color','#ADADAD'); } } ); //星星点击事件 $('li').click(function() { $('li').css('color','#ADADAD'); isClicked =true; varindex = $(this).index(); for(vari = 1; i <= index+1; i++) { $('li:nth-child('+ i +')').css('color','#F0AD4E'); } if(index == beforeClickedIndex) {//两次点击同一颗星星 该星星颜色变化 clickNum++; if(clickNum % 2 == 1) { $('li:nth-child('+ (index + 1) +')').css('color','#ADADAD'); }else{ $('li:nth-child('+ (index + 1) +')').css('color','#F0AD4E'); } }else{ clickNum = 0; beforeClickedIndex = index; } }); }); </script> </body> </html>
了本文案例時你已掌握了方法,更多精彩請關注php中文網其它相關文章!
推薦閱讀:
以上是JS實作評價星級的詳細內容。更多資訊請關注PHP中文網其他相關文章!