微信小程序实现星级评分和展示


Posted in Javascript onJuly 05, 2018

本文实例为大家分享了微信小程序实现星级评分和展示的具体代码,供大家参考,具体内容如下

星级评分分成两种情况: 一:展示后台给的评分数据   二:用户点击第几颗星星就显示为几星评分;

微信小程序实现星级评分和展示

直接上代码

wxml部分

<view>
 <view>一:显示后台给的评分</view>
 <block wx:for="{{one_1}}" wx:key="item">
 <image src='../../image/star.png'></image>
 </block>
 <block wx:for="{{two_1}}" wx:key="item">
 <image src='../../image/starg.png'></image>
 </block>
</view>
<view>这里num给的是几分就显示几颗星星</view>
 
<view style='margin-top:60px;'>二:显示用户选择的评分</view>
<block wx:for="{{one_2}}" wx:key="index">
 <image catchtap='in_xin' id='{{index+1}}' data-in='star' src='../../image/star.png'></image>
</block>
<block wx:for="{{two_2}}" wx:key="index">
 <image catchtap='in_xin' id='{{index+1}}' data-in='starg' src='../../image/starg.png'></image>
</block>
<view>{{one_2}}星</view>

wxss部分

image{ 
 height: 60rpx; 
 width: 60rpx; 
 display: inline-block 
}

js部分

/**
 * 页面的初始数据
 * 满分为5星
 */
 data: {
 num: 4,//后端给的分数,显示的星星
 one_1: '',//点亮的星星数
 two_1: '',//没有点亮的星星数
 one_2: 0,//点亮的星星数
 two_2: 5//没有点亮的星星数
 },
 
 /**
 * 生命周期函数--监听页面加载
 */
 onLoad: function (options) {
 //情况一:展示后台给的评分 
 this.setData({
 one_1: this.data.num,
 two_1: 5 - this.data.num
 })
 },
 in_xin: function (e) {
 var in_xin = e.currentTarget.dataset.in;
 console.log(e.currentTarget.dataset.in);
 console.log(e.currentTarget); 
 var one_2;
 if (in_xin == 'star') {
 one_2 = Number(e.currentTarget.id)
 } else {
 one_2 = Number(e.currentTarget.id) + this.data.one_2
 }
 this.setData({
 one_2: one_2,
 two_2: 5 - one_2
 })
 },

starg是灰色的星星,star是点亮的星星。if判断那里:如果点击的是点亮的星星的话,点亮星星的个数就是点的这个ID。如果点的是灰色星星的话,点亮星星的个数就是点的这个ID加上已点的个数。而ID就是星星的个数。

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

Javascript 相关文章推荐
js实现权限树的更新权限时的全选全消功能
Feb 17 Javascript
javascript 使用 NodeList需要注意的问题
Mar 04 Javascript
基于jQuery的判断iPad、iPhone、Android是横屏还是竖屏的代码
May 11 Javascript
JavaScript中的类(Class)详细介绍
Dec 30 Javascript
JS获取时间的相关函数及时间戳与时间日期之间的转换
Feb 04 Javascript
javascript断点调试心得分享
Apr 23 Javascript
JavaScript 数组中最大最小值
Jun 05 Javascript
jQuery实现按钮点击遮罩加载及处理完后恢复的效果
Jun 07 Javascript
chrome浏览器如何断点调试异步加载的JS
Sep 05 Javascript
聊一聊JS中的prototype
Sep 29 Javascript
vue实现点击展开点击收起效果
Apr 27 Javascript
vue+django实现下载文件的示例
Mar 24 Vue.js
vue-router history模式下的微信分享小结
Jul 05 #Javascript
微信小程序实现运动步数排行功能(可删除)
Jul 05 #Javascript
微信小程序之批量上传并压缩图片的实例代码
Jul 05 #Javascript
JavaScript控制浏览器全屏显示简单示例
Jul 05 #Javascript
基于jQuery使用Ajax动态执行模糊查询功能
Jul 05 #jQuery
JavaScript递归函数解“汉诺塔”算法代码解析
Jul 05 #Javascript
微信小程序开发之改变data中数组或对象的某一属性值
Jul 05 #Javascript
You might like
php 移除数组重复元素的一点说明
2008/11/27 PHP
php调用云片网接口发送短信的实现方法
2017/10/25 PHP
thinkphp框架表单数组实现图片批量上传功能示例
2020/04/04 PHP
页面使用密码保护代码
2013/04/10 Javascript
JS获取各种浏览器窗口大小的方法
2014/01/14 Javascript
Three.js学习之文字形状及自定义形状
2016/08/01 Javascript
JS禁止查看网页源代码的实现方法
2016/10/12 Javascript
AngularJS入门教程之与服务器(Ajax)交互操作示例【附完整demo源码下载】
2016/11/02 Javascript
JS正则表达式验证账号、手机号、电话和邮箱是否合法
2017/03/08 Javascript
Vue学习笔记进阶篇之函数化组件解析
2017/07/21 Javascript
vue.js使用v-model指令实现的数据双向绑定功能示例
2018/05/22 Javascript
vue移动端弹框组件的实例
2018/09/25 Javascript
Vue3.0结合bootstrap创建多页面应用
2019/05/28 Javascript
vue select 获取value和lable操作
2020/08/28 Javascript
[00:20]TI9不朽观赛名额抽取
2019/08/05 DOTA
Python入门学习之字符串与比较运算符
2015/10/12 Python
Python操作Oracle数据库的简单方法和封装类实例
2018/05/07 Python
解决PyCharm import torch包失败的问题
2018/10/13 Python
Python2和Python3之间的str处理方式导致乱码的讲解
2019/01/03 Python
django Admin文档生成器使用详解
2019/07/22 Python
python多线程实现同时执行两个while循环的操作
2020/05/02 Python
python爬虫中url管理器去重操作实例
2020/11/30 Python
作为网站管理者应当如何防范XSS
2014/08/16 面试题
C#怎么让一个窗口居中显示?
2015/10/20 面试题
历史专业毕业生的自我鉴定
2013/11/15 职场文书
出纳岗位职责范本
2013/12/01 职场文书
艺校音乐专业自我鉴定范文
2014/03/01 职场文书
冰峪沟导游词
2015/02/09 职场文书
2015年感恩节活动总结
2015/03/24 职场文书
红歌会主持词
2015/07/02 职场文书
《自己的花是让别人看的》教学反思
2016/02/19 职场文书
拥有这5个特征人,“命”都不会太差
2019/08/16 职场文书
React Hook用法示例详解(6个常见hook)
2021/04/28 Javascript
Python List remove()实例用法详解
2021/08/02 Python
Spring Boot 排除某个类加载注入IOC的操作
2021/08/02 Java/Android
python中urllib包的网络请求教程
2022/04/19 Python