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 相关文章推荐
IE6弹出“已终止操作”的解决办法
Nov 27 Javascript
打造基于jQuery的高性能TreeView(asp.net)
Feb 23 Javascript
JavaScript高级程序设计(第3版)学习笔记7 js函数(上)
Oct 11 Javascript
ajax页面无刷新 IE下遭遇Ajax缓存导致数据不更新的问题
Dec 11 Javascript
node.js中的favicon.ico请求问题处理
Dec 15 Javascript
jQuery实现鼠标经过购物车出现下拉框代码(推荐)
Jul 21 Javascript
js enter键激发事件实例代码
Aug 17 Javascript
JavaScript reduce和reduceRight详解
Oct 24 Javascript
Vue.js实现简单动态数据处理
Feb 13 Javascript
JavaScript设计模式之调停者模式实例详解
Feb 03 Javascript
详解使用React进行组件库开发
Feb 06 Javascript
使用纯前端JavaScript实现Excel导入导出方法过程详解
Aug 07 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中__get()和__set()的用法实例详解
2013/06/04 PHP
JS+PHP实现用户输入数字后显示最大的值及所在位置
2017/06/19 PHP
JavaScript 无符号右移赋值操作
2009/04/17 Javascript
jQuery 操作input中radio的技巧
2016/07/18 Javascript
JS控制HTML元素的显示和隐藏的两种方法
2016/09/27 Javascript
微信小程序开发之map地图实现教程
2017/06/08 Javascript
js中的 || 与 &amp;&amp; 运算符详解
2018/05/24 Javascript
Vue实现点击当前元素以外的地方隐藏当前元素(实现思路)
2019/12/04 Javascript
Vue学习之组件用法实例详解
2020/01/06 Javascript
js实现小星星游戏
2020/03/23 Javascript
[29:10]Ti4 冒泡赛第二天 NEWBEE vs Titan 3
2014/07/15 DOTA
Python实现图片滑动式验证识别方法
2017/11/09 Python
Python 编码规范(Google Python Style Guide)
2018/05/05 Python
python对html过滤处理的方法
2018/10/21 Python
使用python实现简单五子棋游戏
2019/06/18 Python
python文字转语音的实例代码分析
2019/11/12 Python
Python语言异常处理测试过程解析
2020/01/08 Python
用Python绘制漫步图实例讲解
2020/02/26 Python
Python性能分析工具py-spy原理用法解析
2020/07/27 Python
linux centos 7.x 安装 python3.x 替换 python2.x的过程解析
2020/12/14 Python
StubHub智利:购买和出售您的门票
2016/11/23 全球购物
全球销量第一生发产品:Viviscal
2017/12/21 全球购物
美国在线奢侈品寄售商店:Luxury Garage Sale
2018/08/19 全球购物
PHP面试题及答案一
2012/06/18 面试题
华为C++笔试题
2014/08/05 面试题
超市业务员岗位职责
2013/12/05 职场文书
跟单文员岗位职责
2014/01/03 职场文书
汽车专业学生自我评价
2014/01/19 职场文书
策划创业计划书
2014/02/06 职场文书
企业宗旨标语
2014/06/10 职场文书
政府采购方案
2014/06/12 职场文书
2014年图书馆工作总结
2014/11/25 职场文书
任命通知范文
2015/04/21 职场文书
婚庆开业庆典主持词
2015/06/30 职场文书
基于HTML十秒做出淘宝页面
2021/10/24 HTML / CSS
SpringBoot2零基础到精通之异常处理与web原生组件注入
2022/03/22 Java/Android