js实现星星打分效果的方法


Posted in Javascript onJuly 05, 2020

本文实例讲述了js实现星星打分效果的方法。分享给大家供大家参考。具体分析如下:

很多网站都有如下图这样的星星打分效果,今天就看下用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程序设计有所帮助。

Javascript 相关文章推荐
jquery.alert 弹出式复选框实现代码
Jun 15 Javascript
js绑定事件this指向发生改变的问题解决方法
Apr 23 Javascript
Extjs实现进度条的两种便捷方式
Sep 26 Javascript
jQuery 获取和设置select下拉框的值实现代码
Nov 08 Javascript
Angularjs过滤器使用详解
May 25 Javascript
JS闭包与延迟求值用法示例
Dec 22 Javascript
新闻上下滚动jquery 超简洁(必看篇)
Jan 21 Javascript
完美解决手机浏览器顶部下拉出现网页源或刷新的问题
Nov 30 Javascript
详解在Angular4中使用ng2-baidu-map的方法
Jun 19 Javascript
vue中根据时间戳判断对应的时间(今天 昨天 前天)
Dec 20 Javascript
详解Java中String JSONObject JSONArray List转换
Nov 13 Javascript
一文彻底理解js原生语法prototype,__proto__和constructor
Oct 24 Javascript
js实现简单的可切换选项卡效果
Apr 10 #Javascript
js使用DOM操作实现简单留言板的方法
Apr 10 #Javascript
js实现简单鼠标跟随效果的方法
Apr 10 #Javascript
js实现交换运动效果的方法
Apr 10 #Javascript
js实现简单的左右两边固定广告效果实例
Apr 10 #Javascript
javascript实现简单的鼠标拖动效果实例
Apr 10 #Javascript
js简单实现点击左右运动的方法
Apr 10 #Javascript
You might like
实现PHP+Mysql无限分类的方法汇总
2015/03/02 PHP
Symfony2针对输入时间进行查询的方法分析
2017/06/28 PHP
php设计模式之观察者模式实例详解【星际争霸游戏案例】
2020/03/30 PHP
Aster vs KG BO3 第三场2.18
2021/03/10 DOTA
jquery.jstree 增加节点的双击事件代码
2010/07/27 Javascript
用Javascript实现Windows任务管理器的代码
2012/03/27 Javascript
两个listbox实现选项的添加删除和搜索
2013/03/01 Javascript
javascript 实现键盘上下左右功能的小例子
2013/09/15 Javascript
node.js中的path.join方法使用说明
2014/12/08 Javascript
node.js中的console.timeEnd方法使用说明
2014/12/09 Javascript
JS使用post提交的两种方式
2015/12/03 Javascript
JavaScript知识点总结(五)之Javascript中两个等于号(==)和三个等于号(===)的区别
2016/05/31 Javascript
d3.js实现简单的网络拓扑图实例代码
2016/11/06 Javascript
Node.js连接postgreSQL并进行数据操作
2016/12/18 Javascript
基于JavaScript表单脚本(详解)
2017/10/18 Javascript
基于Nuxt.js项目的服务端性能优化与错误检测(容错处理)
2019/10/23 Javascript
vue 父组件通过$refs获取子组件的值和方法详解
2019/11/07 Javascript
vue实现商品列表的添加删除实例讲解
2020/05/14 Javascript
[00:48]完美“圣”典2016风云人物:xiao8宣传片
2016/11/30 DOTA
Python兔子毒药问题实例分析
2015/03/05 Python
Python基于whois模块简单识别网站域名及所有者的方法
2018/04/23 Python
python智联招聘爬虫并导入到excel代码实例
2019/09/09 Python
python批量修改文件名的示例
2020/09/27 Python
CSS3 函数技巧 用css 实现js实现的事情(clac Counters Tooltip)
2017/08/15 HTML / CSS
HTML+CSS3+JS 实现的下拉菜单
2020/11/25 HTML / CSS
Canvas中设置width与height的问题浅析
2018/11/01 HTML / CSS
Omio法国:全欧洲低价大巴、火车和航班搜索和比价
2017/11/13 全球购物
英国派对礼服和连衣裙购物网站:TFNC London
2018/07/07 全球购物
联想阿根廷官方网站:Lenovo Argentina
2019/10/14 全球购物
机械电子工程专业推荐信范文
2013/11/20 职场文书
缴纳养老保险的证明
2014/01/10 职场文书
最新个人职业生涯规划书
2014/01/22 职场文书
抽样调查项目计划书
2014/04/24 职场文书
2014年家长学校工作总结
2014/11/20 职场文书
火烧圆明园观后感
2015/06/03 职场文书
Docker安装MySql8并远程访问的实现
2022/07/07 Servers