javascript 星级评分效果(手写)


Posted in Javascript onDecember 24, 2012

今天上午抽空随手写了个星级评分的效果,给大家分享下。由于水平有限,如有问题请指出。
首先要准备一张星星的图片,灰色是默认状态,黄色是选择状态。如图:
最后附上代码

<!DOCTYPE HTML> 
<html lang="en-US"> 
<head> 
<meta charset="UTF-8"> 
<title>javascript星级评分</title> 
<style type="text/css"> 
*{margin:0;padding:0;} 
.wrapper{height:20px;padding:5px;width:130px;margin:100px auto 10px;} 
a{float:left;width:26px;height:20px;background:url(star.png) 0 -20px no-repeat;} 
p{font:24px SimSun;width:130px;margin-left:auto;margin-right:auto;} 
</style> 
</head> 
<body> 
<div class="wrapper"> 
<a href="javascript:;"></a> 
<a href="javascript:;"></a> 
<a href="javascript:;"></a> 
<a href="javascript:;"></a> 
<a href="javascript:;"></a> 
</div> 
<p></p> 
</body> 
</html> 
<script type="text/javascript"> 
window.onload = function(){ 
var star = document.getElementsByTagName('a'); 
var oDiv = document.getElementsByTagName('div')[0]; 
var temp = 0; 
for(var i = 0, len = star.length; i < len; i++){ 
star[i].index = i; 
star[i].onmouseover = function(){ 
clear(); 
for(var j = 0; j < this.index + 1; j++){ 
star[j].style.backgroundPosition = '0 0'; 
} 
} 
star[i].onmouseout = function(){ 
for(var j = 0; j < this.index + 1; j++){ 
star[j].style.backgroundPosition = '0 -20px'; 
} 
current(temp); 
} 
star[i].onclick = function(){ 
temp = this.index + 1; 
document.getElementsByTagName('p')[0].innerHTML = temp + ' 颗星'; 
current(temp); 
} 
} 
//清除所有 
function clear(){ 
for(var i = 0, len = star.length; i < len; i++){ 
star[i].style.backgroundPosition = '0 -20px'; 
} 
} 
//显示当前第几颗星 
function current(temp){ 
for(var i = 0; i < temp; i++){ 
star[i].style.backgroundPosition = '0 0'; 
} 
} 
}; 
</script>

附上下载地址
PS:这是本人闲着无聊,通过自己所学的 javascript 知识,随意写的一些效果。
Javascript 相关文章推荐
xmlHTTP实例
Oct 24 Javascript
js 加载时自动调整图片大小
May 28 Javascript
JS中setTimeout()的用法详解
Apr 14 Javascript
JavaScript实现的日期控件具体代码
Nov 18 Javascript
jQuery CSS()方法改变现有的CSS样式表
Sep 09 Javascript
JS+CSS实现分类动态选择及移动功能效果代码
Oct 19 Javascript
jQuery插件WebUploader实现文件上传
Nov 07 Javascript
前端面试知识点锦集(JavaScript篇)
Dec 28 Javascript
bootstrap datetimepicker日期插件超详细使用方法介绍
Feb 23 Javascript
微信小程序使用picker实现时间和日期选择框功能【附源码下载】
Dec 11 Javascript
node thread.sleep实现示例
Jun 20 Javascript
javascript设计模式 ? 策略模式原理与用法实例分析
Apr 21 Javascript
Jquery写一个鼠标拖动效果实现原理与代码
Dec 24 #Javascript
jquery限制输入字数,并提示剩余字数实现代码
Dec 24 #Javascript
网页加载时页面显示进度条加载完成之后显示网页内容
Dec 23 #Javascript
ajax中get和post的说明及使用与区别
Dec 23 #Javascript
javascript 全选与全取消功能的实现代码
Dec 23 #Javascript
javascript利用控件对windows的操作实现原理与应用
Dec 23 #Javascript
javascript小数四舍五入多种方法实现
Dec 23 #Javascript
You might like
PHP模块 Memcached功能多于Memcache
2011/06/14 PHP
PHP5中实现多态的两种方法实例分享
2014/04/21 PHP
PHP反向代理类代码
2014/08/15 PHP
PHP基于SimpleXML生成和解析xml的方法示例
2017/07/17 PHP
详解提高使用Java反射的效率方法
2019/04/29 PHP
Yii 实现数据加密和解密
2021/03/09 PHP
Jquery实战_读书笔记2 选择器
2010/01/22 Javascript
JavaScript常用全局属性与方法记录积累
2013/07/03 Javascript
js保留小数点后几位的写法
2014/01/03 Javascript
jQuery操作CheckBox的方法介绍(选中,取消,取值)
2014/02/04 Javascript
js实现的点击数量加一可操作数据库
2014/05/09 Javascript
JavaScript实现表格快速变色效果代码
2015/08/19 Javascript
JS使用正则表达式除去字符串中重复字符的方法
2015/11/05 Javascript
jquery+json实现分页效果
2016/03/07 Javascript
JavaScript中正则表达式判断匹配规则及常用方法
2017/08/03 Javascript
pm2 部署 node的三种方法示例
2017/10/20 Javascript
基于Vue框架vux组件库实现上拉刷新功能
2017/11/28 Javascript
jQuery实现碰到边缘反弹的动画效果
2018/02/24 jQuery
linux服务器快速卸载安装node环境(简单上手)
2021/02/22 Javascript
python搭建简易服务器分析与实现
2012/12/15 Python
详解python之多进程和进程池(Processing库)
2017/06/09 Python
Python中交换两个元素的实现方法
2018/06/29 Python
Windows下PyCharm安装图文教程
2018/08/27 Python
pandas DataFrame索引行列的实现
2019/06/04 Python
关于Python turtle库使用时坐标的确定方法
2020/03/19 Python
基于selenium及python实现下拉选项定位select
2020/07/22 Python
Python+MySQL随机试卷及答案生成程序的示例代码
2021/02/01 Python
澳大利亚香水在线:Price Rite Mart
2017/12/28 全球购物
莫斯科高科技在线商店:KremlinStore
2019/03/13 全球购物
Diesel美国网上商店:意大利牛仔时装品牌
2020/12/10 全球购物
Java编程面试题
2016/04/04 面试题
物业保安员岗位职责制度
2014/01/30 职场文书
反洗钱宣传活动总结
2014/08/26 职场文书
实习科室评语
2015/01/04 职场文书
法定授权委托证明书
2015/06/18 职场文书
毕业生入职感言
2015/07/31 职场文书