试玩(淘宝案例在下面):

效果:

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><title></title><script src="../jquery-3.3.1.min.js"></script><style>*{margin: 0;padding: 0;}ul{list-style: none;/*去除文字字符的间距的三种方法*//*父盒子字号为0*//*font-size: 0;*//*设置字符间距为0*//*letter-spacing: 0;*//*设置文字间距为0*//*word-spacing: 0;*/}li{color: red;float: left;  /*如果把他换成display: inline-block;两个li之间就会有空格,想要去除参照ul写的方法*/font-size: 40px;font-weight: bold;cursor: pointer;}</style><script>$(function () {var wjx_none="☆",wjx_sel="★";$(".comment li").mouseenter(function () {//prevAll()是前面的所有兄弟结点,nextAll()是后面的所有兄弟结点。
//                $(this).text(wjx_sel).prevAll().text(wjx_sel);
//                $(this).nextAll().text(wjx_none);//当执行jQuery时,上面那种方法链式编程就断掉了,如果直接在第一句后面直接加// .nextAll().text(wjx_none),作用的就是前面所有的兄弟结点了,下面这种方法就可以解决;//end()方法就是结束当前链式编程回到最初结点$(this)
                $(this).text(wjx_sel).prevAll().text(wjx_sel).end().nextAll().text(wjx_none);}).click(function () {//记录用户点击的哪个五角星,给该五角星添加一个样式类
                $(this).addClass("clicked").siblings().removeClass();}).mouseleave(function () {//判断离开的时候是否点击,如果没有点击,全部星星也为空心,如果点击了才会产生点击的效果
                $(".comment li").text(wjx_none);//上一句涉及了隐式迭代,给所有的li标签都添加了文本,它返回的是一个数组,js若要实现这个效果就得实现循环遍历//如果是$(".comment li").text()默认返回第一个元素的值
                $(".clicked").text(wjx_sel).prevAll().text(wjx_sel).end().nextAll().text(wjx_none);})})</script>
</head>
<body>
<div><ul class="comment"><li>☆</li><li>☆</li><li>☆</li><li>☆</li><li>☆</li></ul>
</div>
</body>
</html>

仿淘宝五角星案例:

效果:

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><title></title><script src="../jquery-3.3.1.min.js"></script><style>*{margin: 0;padding: 0;}div{width: 120px;height: 20px;margin: 300px auto;border: 1px solid red;padding: 10px;}img{display: inline-block;cursor: pointer;}</style><script>$(function () {$(".comment img").mouseenter(function () {if($(this).index()<=1){$(this).attr("src","star3.png").prevAll().attr("src","star3.png").end().nextAll().attr("src","star1.png");}else{$(this).attr("src","star2.png").prevAll().attr("src","star2.png").end().nextAll().attr("src","star1.png");}}).click(function () {$(this).addClass("clicked").siblings().removeClass();$(".clicked").prevAll().attr("src",$(this).attr("src")).end().nextAll().attr("src","star1.png");}).mouseleave(function () {//判断一个标签类是否含有某个class://1.使用$('div').is('.redColor')方法//2.使用$('div').hasClass('redColor')方法  (注意jquery的低版本可能是hasClass(‘.classname’))if($(".comment img").hasClass("clicked")){$("img.clicked").prevAll().attr("src",$("img.clicked").attr("src")).end().nextAll().attr("src","star1.png");}else{$(".comment img").attr("src","star1.png");}})})</script>
</head>
<body>
<div><span class="comment"><img src="star1.png" alt=""/><img src="star1.png" alt=""/><img src="star1.png" alt=""/><img src="star1.png" alt=""/><img src="star1.png" alt=""/></span>
</div>
</body>
</html>

star1:  star2:  star3:

转载于:https://www.cnblogs.com/alex-xxc/p/9738815.html

22.仿淘宝五角星评论(链式编程、隐式迭代)相关推荐

  1. MySQL仿淘宝页面评论评分统计SQL

    假设淘宝有一张商品评论表,存储在MySQL中.表设计如下: ID为productlist_comment主键, UserID为用户的ID, ProductID为商品ID Content为评论的内容, ...

  2. 【vue】仿淘宝商品详情---实现滚动显隐标签页锚点导航

    先看图 利用css的opacity实现了在滚动时对导航栏透明度的改变,达到导航栏滚动显隐效果 说明 封装成组件复用的话,首先快捷键的每一项数据需要父组件传入:在父组件定义一个数组作为右侧导航栏的数据: ...

  3. silverlight 自定义控件基础篇(仿淘宝评论星级控件)

    首先说说今天的控件能干什么? 1,仿淘宝的评论星级控件,鼠标滑过星星,会变亮. 2,可以用来,展示某一类对象的状态,或者统计信息,比如说,某一类对象,有1~10不同的状态,10为满状态,那么该控件就能 ...

  4. HTML5响应式手机模板:电商网站设计——仿淘宝手机app界面模板源码 HTML+CSS+JavaScript...

    HTML5响应式手机模板:电商网站设计--仿淘宝手机app界面模板源码 HTML+CSS+JavaScript 手机电商模板 手机网站模板 企业手机网站模板 手机网站模板 手机模板 响应式手机网站 h ...

  5. 微信小程序的订单评论页面-仿淘宝

    微信小程序的订单评论页面-仿淘宝 在网上搜了下,大部分都挺麻烦的,所以自己写了个,感觉还可以 先看效果图: 需要用到的图片: 上代码: wxml: <view class='contains'& ...

  6. HTML5响应式手机模板:电商网站设计——仿淘宝手机app界面模板源码 HTML+CSS+JavaScript

    HTML5响应式手机模板:电商网站设计--仿淘宝手机app界面模板源码 HTML+CSS+JavaScript 手机电商模板 手机网站模板 企业手机网站模板 手机网站模板 手机模板 响应式手机网站 h ...

  7. 使用WEX5移动开发工具制作仿淘宝APP

    毕业设计-使用WEX5移动开发工具制作仿淘宝APP 系统设计的意义 本课题来源于对日常逛超市.购物的生活体验和指导老师的提示.本系统是基于 WeX5的仿淘宝App系统,它商家们提供了一个更广阔的商品推 ...

  8. Android仿淘宝详情页面viewPager滑动到最后一张图片跳转的功能

    需要做一个仿淘宝客户端ViewPager滑动到最后一页,再拖动的时候跳到详情的功能,刚开始我也迷糊了,通过查阅相关资料发现有好多种实现方法,下面小编给大家分享实例代码,感兴趣的朋友一起看看吧 需要做一 ...

  9. HTML5期末大作业:电商网站设计——仿淘宝电商网站管理系统21页(含毕业设计论文7500字) HTML+CSS+JavaScript

    HTML5期末大作业:电商网站设计--仿淘宝电商网站管理系统21页(含毕业设计论文7500字) HTML+CSS+JavaScript 常见网页设计作业题材有 个人. 美食. 公司. 学校. 旅游. ...

最新文章

  1. matlab坐标数据导出,大批量fluent导出数据,然后找对应坐标的信息
  2. 三十五、深入Python的引用计数
  3. dilink智能网联系统鸿蒙系统,【图】秦Pro DM DiLink智能网联系统实测解读_汽车江湖...
  4. java 类型转换方法_java数据类型转换的常见方法
  5. BZOJ-1901 Zju2112 Dynamic Rankings 函数式线段树 套 树状数组+离线处理
  6. MySQL (15)---UPDATE 更新
  7. (原创)Python 自动化测试框架详解
  8. python 高级函数补充
  9. Windows 11正式发布,新功能太绝了!
  10. java 判断是否信用卡_用java实现验证输入信用卡号码的正误
  11. android时间戳单位是什么,Android之判断时间戳是不是今天
  12. OpenVINO示例介绍
  13. 微阵列扫描仪行业调研报告 - 市场现状分析与发展前景预测
  14. VUE构建工具-姜威-专题视频课程
  15. 【算法】10亿int型数,统计只出现一次的数
  16. 在了解VR的途中看到文章
  17. 【信息安全】-安全协议
  18. vue整合bpmn.js并汉化
  19. 使用python爬虫——爬取淘宝图片和知乎内容
  20. 湖南大学计算机类有哪些专业,湖南大学专业排名,招生专业目录(10篇)

热门文章

  1. 计算机Word2010在线做题,计算机WORD题库及答案.doc
  2. 后疫情时代,VR云游打造个性化云服务
  3. pnetlab中打开设备自动关机了
  4. java mysql 唯一约束_java MySQL约束
  5. 读《重构》,学习Collections.unmodifiableList()用法
  6. php程序员好找对象吗,程序员找对象那么难吗
  7. Ubuntu无法切换到桌面tty7解决
  8. Flash Player渲染模型(显示列表)
  9. 【基础】TLV 报文格式详细解析
  10. matlab(四)符号运算