写个最简单的原生js的星级评分:
Html代码
<div id="rank" class="pingfen"> <ul> <li></li> <li></li> <li></li> <li></li> <li></li> </ul> <p>加载中</p> </div>
CSS代码
<style type="text/css"> *{margin: 0;padding: 0;} .pingfen{ width: 135px; margin:10px auto; height:20px; position: relative;} .pingfen ul{height:20px; margin-bottom: 10px;} .pingfen li{ width: 20px; float: left; height: 20px; cursor: pointer; background: url(star.png) no-repeat 0 0; list-style: none;} .pingfen .active{background: url(star.png) no-repeat 0 -28px;} .pingfen p{ position: absolute; top:24px; left: 0px; width: 134px; height: 28px; background: #fff; line-height: 28px; text-align: center; border:1px solid #333; display:none;} </style>
Js代码
<script> var aData =["很差","较差","一般","推荐","力推"]; window.onload=function(){ var oDiv = document.getElementById("rank"); var aLi = oDiv.getElementsByTagName("li"); var oP = oDiv.getElementsByTagName("p")[0]; var i =0; for(i=0;i<aLi.length;i++){ aLi[i].index = i; aLi[i].onmouSEOver = function(){ oP.style.display = "block"; oP.innerHTML=aData[this.index]; for(i=0; i<=this.index;i++){ aLi[i].className="active"; } }; aLi[i].onmouseout = function(){ oP.style.display = ""; for(i=0; i<aLi.length; i++){ aLi[i].className=""; } }; aLi[i].onclick=function(){ alert(this.index +1); }; } }; </script>
ok超级简单不信你试试。