js實現星星打分效果的方法_javascript技巧

來源:互聯網
上載者:User

本文執行個體講述了js實現星星打分效果的方法。分享給大家供大家參考。具體分析如下:

很多網站都有如下圖這樣的星星打分效果,今天就看下用js怎麼實現打分效果。

效果詳解
1. 滑鼠移上的時候星星點亮,下面的文字顯示。滑鼠移出的時候星星為灰,下面文字不顯示。
2. 滑鼠移到某個星星上,它之前的所有星星都會亮。
3. 滑鼠移到某個星星上並點擊,會顯示打分結果。
 
代碼如下

<!doctype html><html><head> <meta charset="gbk">  <title>切換</title> <style>.wrapper{width:300px; margin:10px auto; font:14px/1.5 arial;}/*tab*/#star{overflow:hidden;}#star li{float:left;width:20px;height:20px;margin:2px;display:inline;color:#999;font:bold 18px arial;cursor:pointer}#star .act{color:#c00}#star_word{width:80px;height:30px;line-height:30px;border:1px solid #ccc;margin:10px;text-align:center;display:none}</style><script>window.onload = function(){ var star = document.getElementById("star"); var star_li = star.getElementsByTagName("li"); var star_word = document.getElementById("star_word"); var result = document.getElementById("result"); var i=0; var j=0; var len = star_li.length; var word = ['很差','差','一般',"好","很好"] for(i=0; i<len; i++){ star_li[i].index = i; star_li[i].onmouseover = function(){  star_word.style.display = "block";  star_word.innerHTML = word[this.index];  for(i=0; i<=this.index; i++){   star_li[i].className = "act";  } } star_li[i].onmouseout = function(){  star_word.style.display = "none";  for(i=0; i<len; i++){   star_li[i].className = "";  } } star_li[i].onclick = function(){  result.innerHTML = (this.index+1)+"分"; } }}</script></head><body><div class="wrapper">打分結果 <span id="result"></span><ul id="star"><li>★</li><li>★</li><li>★</li><li>★</li><li>★</li></ul><div id="star_word">一般</div></div> </body> </html>

希望本文所述對大家的javascript程式設計有所協助。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.