JavaScript實(shí)現(xiàn)星星等級(jí)評(píng)價(jià)功能
本文實(shí)例為大家分享了js星星等級(jí)評(píng)價(jià)的具體代碼,供大家參考,具體內(nèi)容如下
效果圖:
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Document</title> <style> .container{ float:left; } .score{ float: left; position: relative; width: 100px; margin-top: 5px; margin-left: 10px; } span{ display: none; position: absolute; left: 0; top: 0; } .scoreDisplay{ display: block; } </style> <script src="jquery-1.12.2.min.js"></script> </head> <body> <!-- 一個(gè)容器里面放5張圖片,先所有的都空星圖片--> <!-- 該案例的要點(diǎn)就是在于鼠標(biāo)移動(dòng)上去時(shí)改變圖片的src--> <div class="container"> <img src=".idea/empty.png" alt=""> <img src=".idea/empty.png" alt=""> <img src=".idea/empty.png" alt=""> <img src=".idea/empty.png" alt=""> <img src=".idea/empty.png" alt=""> </div> <div class="score"> <span>很差</span> <span>較差</span> <span>一般</span> <span>較好</span> <span>很好</span> </div> <script> var img = $(".container img");//獲取5張圖片的集合 var span = $(".score span"); var i,j,k;//定義變量i,j,k k = -1;//k給予一個(gè)初始值-1,,不然后面第1個(gè)星星始終是被點(diǎn)亮的 img.mouseenter(function(){ //設(shè)置鼠標(biāo)進(jìn)入時(shí)的效果,首先將所有的星星熄滅,然后再根據(jù)用戶(hù)鼠標(biāo)進(jìn)入的星星下標(biāo)值點(diǎn)亮星星 span.removeClass("scoreDisplay");//鼠標(biāo)進(jìn)入時(shí),將右邊的評(píng)論清除掉 img.attr("src",".idea/empty.png"); i = img.index(this); for(j=0;j<=i;j++) { img.eq(j).attr("src",".idea/shining.png"); } span.eq(i).addClass("scoreDisplay");//根據(jù)用戶(hù)進(jìn)入的i值來(lái)顯示評(píng)論 }).mouseleave(function(){ //仍然是將所有的星星熄滅,然后根據(jù)k值來(lái)點(diǎn)亮星星 span.removeClass("scoreDisplay");//鼠標(biāo)離開(kāi)時(shí),首先清除掉評(píng)論 img.attr("src",".idea/empty.png");//接下來(lái)將所有星星變?yōu)榭招? for(j=0;j<=k;j++)//根據(jù)最終值k值來(lái)確定點(diǎn)亮幾顆星星 { img.eq(j).attr("src",".idea/shining.png"); } if(k==-1)//如果k值=-1,則不顯示任何一個(gè)評(píng)論內(nèi)容 { span.removeClass("scoreDisplay"); } else{ span.eq(k).addClass("scoreDisplay");//根據(jù)最終值k值顯示評(píng)論 } }); $("img").click(function(){ //k記錄用戶(hù)點(diǎn)擊鼠標(biāo)時(shí)的星星下標(biāo)值 k = img.index(this); }) </script> </body> </html>
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
JS判斷頁(yè)面是否出現(xiàn)滾動(dòng)條的方法
這篇文章主要介紹了JS判斷頁(yè)面是否出現(xiàn)滾動(dòng)條的方法,涉及javascript針對(duì)頁(yè)面元素的讀取與判定實(shí)現(xiàn)技巧,具有一定參考借鑒價(jià)值,需要的朋友可以參考下2015-07-07JavaScript執(zhí)行環(huán)境及作用域鏈實(shí)例分析
這篇文章主要介紹了JavaScript執(zhí)行環(huán)境及作用域鏈,結(jié)合實(shí)例形式分析了JavaScript執(zhí)行環(huán)境及作用域鏈的相關(guān)概念、功能與使用技巧,需要的朋友可以參考下2018-08-08Javascript中replace方法與正則表達(dá)式的結(jié)合使用教程
replace方法是javascript涉及到正則表達(dá)式中較為復(fù)雜的一個(gè)方法,嚴(yán)格上說(shuō)應(yīng)該是string對(duì)象的方法,下面這篇文章主要給大家介紹了關(guān)于Javascript中replace方法與正則表達(dá)式的結(jié)合使用的相關(guān)資料,需要的朋友可以參考下2022-09-09JavaScript判斷是否為數(shù)字的4種方法及效率比較
這篇文章主要介紹了JavaScript判斷是否為數(shù)字的4種方法及效率比較,本文直接給出判斷方法實(shí)現(xiàn)代碼及運(yùn)行效率效果圖,方便大家選擇使用,需要的朋友可以參考下2015-04-04基于BootStrap實(shí)現(xiàn)局部刷新分頁(yè)實(shí)例代碼
這篇文章主要介紹了基于BootStrap實(shí)現(xiàn)局部刷新的分頁(yè)的相關(guān)資料,非常不錯(cuò),代碼簡(jiǎn)單易懂,具有參考價(jià)值,需要的朋友可以參考下2016-08-08利用JScript中運(yùn)算符"||"和"&&"的特殊特性實(shí)現(xiàn)代碼精
利用JScript中運(yùn)算符"||"和"&&"的特殊特性實(shí)現(xiàn)代碼精簡(jiǎn)...2007-03-03處理文本部分內(nèi)容的TextRange對(duì)象應(yīng)用實(shí)例
TextRange是用來(lái)表現(xiàn)HTML元素中文字的對(duì)象,是一個(gè)用于處理JavaScript對(duì)象文本部分內(nèi)容的一個(gè)對(duì)象2014-07-07js與jQuery實(shí)現(xiàn)獲取table中的數(shù)據(jù)并拼成json字符串操作示例
這篇文章主要介紹了js與jQuery實(shí)現(xiàn)獲取table中的數(shù)據(jù)并拼成json字符串操作,涉及javascript與jQuery針對(duì)HTML頁(yè)面table表格數(shù)據(jù)獲取、遍歷及json字符串拼接相關(guān)操作技巧,需要的朋友可以參考下2018-07-07JS對(duì)象轉(zhuǎn)換為Jquery對(duì)象實(shí)現(xiàn)代碼
很多新手朋友們都不知道js對(duì)象如何轉(zhuǎn)換為jquery對(duì)象,其實(shí)很簡(jiǎn)單,下面有個(gè)不錯(cuò)的示例,感興趣的朋友可以參考下2013-12-12