`
xiaomiya
  • 浏览: 127402 次
  • 性别: Icon_minigender_2
  • 来自: 杭州
社区版块
存档分类
最新评论

原生js星级评分

阅读更多

写个最简单的原生js的星级评分:

<div id="rank" class="pingfen">
	<ul>
		<li></li>
		<li></li>
		<li></li>
		<li></li>
		<li></li>
	</ul>
	<p>加载中</p>
</div>

 

<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>

 

<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超级简单不信你试试。

 

 

因评论说不能使用,让给发个完整的代码,其实上面的代码就完整只是给拆分了而已。

下面是没有拆分的。

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<title>星级评分</title>
<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>

<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>
</head>
<body>
	<div id="rank" class="pingfen">
		<ul>
			<li></li>
			<li></li>
			<li></li>
			<li></li>
			<li></li>
		</ul>
		<p>加载中</p>
	</div>
	
</body>
</html>

 

2
1
分享到:
评论
2 楼 xiaomiya 2014-03-25  
亲,可以使用的哟!其实上面的代码就是完整的啦,,只是给拆分了下而已,,
1 楼 kingcs 2014-03-24  
提供完整代码啊,无法使用……

相关推荐

Global site tag (gtag.js) - Google Analytics