js仿淘宝和百度文库的评分功能


Posted in Javascript onMay 15, 2016

本文实例为大家分享了类似于淘宝和百度文库的评分功能,js实现,供大家参考,具体内容如下

效果如图:

js仿淘宝和百度文库的评分功能

五个五角星分别放在了一个table的五列中。下面是一个<p>,用来显示评分结果的;代码如下:

<body onload="changebg()">
 <table border="0" align="center" cellpadding="0" cellspacing="0" id="maintable">
  <tr style=" font-size:30px;">
   <td>☆</td><td>☆</td><td>☆</td><td>☆</td><td>☆</td>
  </tr>
 </table>
 <p align="center" id="result">您评了<label id="score"></label>分</p>

</body>

body的onload事件绑定的是一个方法,js代码如下:

<script type="text/javascript">
  function getindex(arr,element) {  //参数:数组,元素;返回兄弟元素的索引  
   for (var i = 0; i < arr.length; i++) {
    if (arr[i] == element) {
     return i;
    }
   }
   return -1;
  }

  function changebg() {  //为每个td设置获得焦点属性【也可以设置onclick属性】
   var maintable = document.getElementById("maintable");  //获取需要设置的表格
   var tds = maintable.getElementsByTagName("td");   //获取表格下的所有单元格
   document.getElementById("result").style.display = "none"; //设置得分结果为隐藏
   for (var i = 0; i < tds.length; i++) {
    var td = tds[i];
    td.onfocus = getonfocus;
    td.style.cursor = "pointer";
//为了设置鼠标放在五角星上呈手型
   }
    
  }
  function getonfocus(){  //设置td的焦点事件,
   var maintable = document.getElementById("maintable");
   var tds = maintable.getElementsByTagName("td");
   var index = getindex(tds, this);   //返回响应事件的索引 用this代表触发此事件的元素
   document.getElementById("result").style.display = "";  //得到分数后把结果显示出来
   document.getElementById("score").innerText = index + 1;
   for (var i = 0; i < index+1; i++) {
    tds[i].style.color = "red";
   }
   for (var i = index+1; i < tds.length; i++) {
    tds[i].style.color = "black";
   }

  }
 </script>

js代码主要有三个函数构成;

①:changebg();body的onload事件绑定的函数;为了实现对每个td元素绑定onfocus事件;

②:getonfocus();td元素onfocus事件的具体实现;

③:getindex();有两个参数,一个是td元素的集合数组,一个是相应事件的td元素,注意使用this关键字。主要返回相应事件的元素的索引,为了把响应事件元素之前的颜色显示成红色,后面的元素显示成黑色;

以上就是本文的全部内容,希望对大家学习javascript程序设计有所帮助。

Javascript 相关文章推荐
Jquery AutoComplete自动完成 的使用方法实例
Mar 19 Javascript
js动画效果制件让图片组成动画代码分享
Jan 14 Javascript
使用postMesssage()实现iframe跨域页面间的信息传递
Mar 29 Javascript
Vuex之理解Mutations的用法实例
Apr 19 Javascript
Angular 4环境准备与Angular cli创建项目详解
May 27 Javascript
小程序实现授权登陆的解决方案
Dec 02 Javascript
element-ui多文件上传的实现示例
Apr 10 Javascript
简单了解JavaScript arguement原理及作用
May 28 Javascript
webpack+express实现文件精确缓存的示例代码
Jun 11 Javascript
vue实现整屏滚动切换
Jun 29 Javascript
微信小程序实现列表的横向滑动方式
Jul 15 Javascript
开发一个封装iframe的vue组件
Mar 29 Vue.js
RequireJS使用注意细节
May 15 #Javascript
JSON 的正确用法探讨:Pyhong、MongoDB、JavaScript与Ajax
May 15 #Javascript
jQuery插件开发汇总
May 15 #Javascript
Javascript的无new构建实例详解
May 15 #Javascript
Javascript基础知识盲点总结之函数
May 15 #Javascript
深入理解$.each和$(selector).each
May 15 #Javascript
js中最容易被忽视的事件问题大总结
May 15 #Javascript
You might like
php检测网页是否被百度收录的函数代码
2013/10/09 PHP
ThinkPHP分页实例
2014/10/15 PHP
php实现字符串首字母大写和单词首字母大写的方法
2015/03/14 PHP
大家都应该掌握的PHP关联数组使用技巧
2015/12/25 PHP
Symfony2获取web目录绝对路径、相对路径、网址的方法
2016/11/14 PHP
php 文件下载 出现下载文件内容乱码损坏的解决方法(推荐)
2016/11/16 PHP
thinkphp5 migrate数据库迁移工具
2018/02/20 PHP
js校验表单后提交表单的三种方法总结
2014/02/28 Javascript
jQuery实现列表的全选功能
2015/03/18 Javascript
js限制文本框的输入内容代码分享(3类)
2015/08/20 Javascript
Jquery 全选反选实例代码
2015/11/19 Javascript
两种方法解决javascript url post 特殊字符转义 + &amp; #
2016/04/13 Javascript
Bootstrap3.0建站教程(一)之bootstrap表单元素排版
2016/06/01 Javascript
解决微信浏览器Javascript无法使用window.location.reload()刷新页面
2016/06/21 Javascript
jQuery tip提示插件(实例分享)
2017/04/28 jQuery
jQuery表单设置值的方法
2017/06/30 jQuery
浅谈Vuejs Prop基本用法
2017/08/17 Javascript
详解利用 Vue.js 实现前后端分离的RBAC角色权限管理
2017/09/15 Javascript
[01:07]DOTA2次级职业联赛 - Fpb战队宣传片
2014/12/01 DOTA
[54:10]Spirit vs NB Supermajor小组赛 A组败者组决赛 BO3 第一场 6.2
2018/06/03 DOTA
Python基于PycURL实现POST的方法
2015/07/25 Python
Python中多线程的创建及基本调用方法
2016/07/08 Python
python使用pyqt写带界面工具的示例代码
2017/10/23 Python
pycharm运行出现ImportError:No module named的解决方法
2018/10/13 Python
Java byte数组操纵方式代码实例解析
2020/07/22 Python
python 获取字典特定值对应的键的实现
2020/09/29 Python
python中用Scrapy实现定时爬虫的实例讲解
2021/01/18 Python
HTML5+CSS3 实现灵动的动画 TAB 切换效果(DEMO)
2017/09/15 HTML / CSS
纽约复古灵感的现代珠宝品牌:Lulu Frost
2018/03/03 全球购物
类和结构的区别
2012/08/15 面试题
关于赌博的检讨书
2014/01/24 职场文书
社区敬老月活动实施方案
2014/02/17 职场文书
水知道答案观后感
2015/06/08 职场文书
创业计划书之废品回收
2019/09/26 职场文书
PySwarms(Python粒子群优化工具包)的使用:GlobalBestPSO例子解析
2021/04/05 Python
python基础详解之if循环语句
2021/04/24 Python