JavaScript实现星级评价效果


Posted in Javascript onMay 17, 2019

本文实例为大家分享了js实现星级评价效果展示的具体代码,供大家参考,具体内容如下

背景图片实现

图片是width:36px; height:25px;

背景是白色,中间一个空的五角星,空的边缘有一像素的边框;(不然就看不到了);

<!DOCTYPE html>
<html lang="en">
<head>
 <meta charset="UTF-8">
 <title>星级评价(可半星)</title>
 <style>
  .xin{height: 25px; background: url(images/x.png); position: relative; display: inline-block;}
  .xin span{display: block; height: 25px; background: #f60; position: absolute; left: 0; top: 0;z-index: -1;transition: 0.2s;}
  .xin ul{position: absolute; top: 0; left: 0; height: 25px; margin: 0; padding: 0; list-style: none;}
  .xin ul li{float: left; width: 18px; height: 25px;}
  .fensu{display: inline-block;}
 </style>
</head>
<body>
 <input type="hidden" title="10" value="3.5">
 <input type="hidden" title="5" value="1.5">
 <script>
  var input=document.querySelectorAll("input[type=hidden]");
  input.forEach(function(_input){
   var Div=document.createElement("div");
   Div.className="xin";
   Div.style.width=18*(_input.title || 5)*2 + "px";
   _input.parentNode.insertBefore(Div,_input);
   var span=document.createElement("span");
   span.style.width=(_input.value)*36+"px";
   var p=document.createElement("p");
   p.innerHTML=_input.value+"分";
   p.className="fensu";
   Div.parentNode.insertBefore(p,Div);
   Div.parentNode.insertBefore(Div,p);
   Div.appendChild(span);
   var ul=document.createElement("ul");
   Div.appendChild(ul);
   for(var i=0;i<(_input.title || 5)*2;i++){
    var li=document.createElement("li");
    li.title=(i+1)/2+"分";
    ul.appendChild(li);
   }
   var LI=ul.querySelectorAll("li");
   LI.forEach(function(_li,x){
    _li.onclick=function(){
     _input.value=(x+1)/2;
     span.style.width=18*(x+1)+"px";
     p.innerHTML=_input.value+"分";
    }
    _li.onmouseover=function(){
     span.style.width=18*(x+1)+"px";
    }
    _li.onmouseout=function(){
     span.style.width=(_input.value)*36+"px";
    }
   })
   var br=document.createElement("br");
   p.parentNode.insertBefore(br,p);
   p.parentNode.insertBefore(p,br);
  })
 </script>
</body>
</html>

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
javascript 火狐(firefox)不显示本地图片问题解决
Jul 05 Javascript
关于jquery input textare 事件绑定及用法学习
Apr 03 Javascript
深入理解javascript作用域和闭包
Sep 23 Javascript
javascript去除字符串左右两端的空格
Feb 05 Javascript
Jquery判断radio、selelct、checkbox是否选中及获取选中值方法总结
Apr 15 Javascript
使用node+vue.js实现SPA应用
Jan 28 Javascript
Bootstrap的Refresh Icon也spin起来
Jul 13 Javascript
微信小程序支付前端源码
Aug 29 Javascript
如何使用less实现随机下雪动画详解
Jan 02 Javascript
详解vue-cli3 中跨域解决方案
Apr 10 Javascript
开源一个微信小程序仪表盘组件过程解析
Jul 30 Javascript
JS轻量级函数式编程实现XDM三
Jun 16 Javascript
JavaScript实现美化滑块效果
May 17 #Javascript
vue中使用mxgraph的方法实例代码详解
May 17 #Javascript
vue中引入mxGraph的步骤详解
May 17 #Javascript
微信小程序云开发 搭建一个管理小程序
May 17 #Javascript
微信小程序云开发实现增删改查功能
May 17 #Javascript
微信小程序云开发实现云数据库读写权限
May 17 #Javascript
ES6中的class是如何实现的(附Babel编译的ES5代码详解)
May 17 #Javascript
You might like
php函数serialize()与unserialize()用法实例
2014/11/06 PHP
php字符串的替换,分割和连接方法
2016/05/23 PHP
CentOS 上搭建 PHP7 开发测试环境
2017/02/26 PHP
yii框架数据库关联查询操作示例
2019/10/14 PHP
JavaScript Accessor实现说明
2010/12/06 Javascript
jquery text(),val(),html()方法区别总结
2013/11/04 Javascript
深入理解JavaScript系列(48):对象创建模式(下篇)
2015/03/04 Javascript
基于jQuery.Hz2Py.js插件实现的汉字转拼音特效
2015/05/07 Javascript
对于jQuery性能的一些优化建议
2015/08/13 Javascript
nodejs 的 session 简单使用
2016/06/06 NodeJs
JS实现环形进度条(从0到100%)效果
2016/07/05 Javascript
全面解析node 表单的图片上传
2016/11/21 Javascript
jQuery中页面返回顶部的方法总结
2016/12/30 Javascript
移动web开发之touch事件实例详解
2018/01/17 Javascript
基于vue-simple-uploader封装文件分片上传、秒传及断点续传的全局上传插件功能
2021/02/23 Vue.js
解决python删除文件的权限错误问题
2018/04/24 Python
在python中对变量判断是否为None的三种方法总结
2019/01/23 Python
python虚拟环境的安装和配置(virtualenv,virtualenvwrapper)
2019/08/09 Python
Pytorch的mean和std调查实例
2020/01/02 Python
利用Pytorch实现简单的线性回归算法
2020/01/15 Python
解决pytorch 交叉熵损失输出为负数的问题
2020/07/07 Python
超级实用的8个Python列表技巧
2020/08/24 Python
Python开发入门——迭代的基本使用
2020/09/03 Python
英国足球店:UK Soccer Shop
2017/11/19 全球购物
简单说下OSPF的操作过程
2014/08/13 面试题
装饰资料员岗位职责
2013/12/30 职场文书
护士长竞聘书
2014/03/31 职场文书
自强之星事迹材料
2014/05/12 职场文书
社保委托书怎么写
2014/08/02 职场文书
2014预备党员批评与自我批评思想汇报
2014/09/20 职场文书
2014年教研员工作总结
2014/12/23 职场文书
质量承诺书格式范文
2015/04/28 职场文书
党支部综合考察意见
2015/06/01 职场文书
2015年小学财务工作总结
2015/07/20 职场文书
婚宴父亲致辞
2015/07/27 职场文书
Java方法重载和方法重写的区别到底在哪?
2021/06/11 Java/Android