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


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 相关文章推荐
DOM 脚本编程中的兄弟节点
Oct 31 Javascript
JavaScript 学习笔记(六)
Dec 31 Javascript
js原型继承的两种方法对比介绍
Mar 30 Javascript
IE中鼠标经过option触发mouseout的解决方法
Jan 29 Javascript
PhotoShop给图片自动添加边框及EXIF信息的JS脚本
Feb 15 Javascript
javascript实现链接单选效果的方法
May 13 Javascript
iScroll.js 使用方法参考
May 16 Javascript
Vue-Router实现页面正在加载特效方法示例
Feb 12 Javascript
ReactNative Image组件使用详解
Aug 07 Javascript
实例详解vue.js浅度监听和深度监听及watch用法
Aug 16 Javascript
JavaScript观察者模式原理与用法实例详解
Mar 10 Javascript
JavaScript实例 ODO List分析
Jan 22 Javascript
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
discuz论坛 用户登录 后台程序代码
2008/11/27 PHP
php使用gzip压缩传输js和css文件的方法
2015/07/29 PHP
php数据库的增删改查 php与javascript之间的交互
2017/08/31 PHP
PHP unlink与rmdir删除目录及目录下所有文件实例代码
2018/02/07 PHP
javascript firefox兼容ie的dom方法脚本
2008/05/18 Javascript
AJAX的跨域与JSONP(为文章自动添加短址的功能)
2010/01/17 Javascript
JavaScript中setInterval的用法总结
2013/11/20 Javascript
ajax提交表单实现网页无刷新注册示例
2014/05/08 Javascript
JQuery中基础过滤选择器用法实例分析
2015/05/18 Javascript
jquery实现点击其他区域时隐藏下拉div和遮罩层的方法
2015/12/23 Javascript
HTML5游戏引擎LTweenLite实现的超帅动画效果(附demo源码下载)
2016/01/26 Javascript
Google 地图事件实例讲解
2016/08/06 Javascript
JS动态加载脚本并执行回调操作
2016/08/24 Javascript
js手动播放图片实现图片轮播效果
2016/09/17 Javascript
详解vue2 $watch要注意的问题
2017/09/08 Javascript
微信小程序内拖动图片实现移动、放大、旋转的方法
2018/09/04 Javascript
原生js实现Flappy Bird小游戏
2018/12/24 Javascript
微信小程序云开发之模拟后台增删改查
2019/05/16 Javascript
Vue拖拽组件列表实现动态页面配置功能
2019/06/17 Javascript
浅谈TypeScript 用 Webpack/ts-node 运行的配置记录
2019/10/11 Javascript
[01:24]2014DOTA2 TI第二日 YYF表示这届谁赢都有可能
2014/07/11 DOTA
Python使用pyh生成HTML文档的方法示例
2018/03/10 Python
python+opencv识别图片中的圆形
2020/03/25 Python
解决pandas.DataFrame.fillna 填充Nan失败的问题
2018/11/06 Python
python中如何实现将数据分成训练集与测试集的方法
2019/09/13 Python
pytorch中tensor张量数据类型的转化方式
2019/12/31 Python
tensorflow 固定部分参数训练,只训练部分参数的实例
2020/01/20 Python
Python批量删除mysql中千万级大量数据的脚本分享
2020/12/03 Python
python Scrapy爬虫框架的使用
2021/01/21 Python
纯CSS改变webkit内核浏览器的滚动条样式
2014/04/17 HTML / CSS
HTML+CSS3模拟心的跳动实例代码
2017/09/05 HTML / CSS
EVE LOM英国官网:全世界最好的洁面膏
2017/10/30 全球购物
大型车展策划方案
2014/02/01 职场文书
2014年村委会工作总结
2014/11/24 职场文书
《平行四边形的面积》教学反思
2016/02/16 职场文书
goland 恢复已更改文件的操作
2021/04/28 Golang