微信小程序实现星星评价效果
作者:Stevin的技术博客 发布时间:2023-08-24 10:04:45
标签:微信小程序,星星评价
本文实例为大家分享了微信小程序实现星星评价效果的具体代码,供大家参考,具体内容如下
代码实现
wxml文件
<!--pages/evaluatepage/evaluatepage.wxml-->
<view class='container'>
<view class='evaluate_contant'>
<!--外层循环控制有几个评价条目 -->
<block wx:for='{{evaluate_contant}}' wx:key='' wx:for-index='idx'>
<view class='evaluate_item'>
<view class='evaluate_title'>{{item}}</view>
<!--星星评价 -->
<view class='evaluate_box'>
<!--内层循环展示每个评价条目的星星 -->
<block wx:for="{{stars}}" wx:key=''>
<image class="star-image" style="left: {{item*80}}rpx" src="{{scores[idx] > item ?(scores[idx]-item == 0.5?halfSrc:selectedSrc) : normalSrc}}">
<view class="item" style="left:0rpx" data-score="{{item + 0.5}}" data-idx='{{idx}}' bindtap="selectLeft"></view>
<view class="item" style="left:20rpx" data-score="{{item + 1}}" data-idx='{{idx}}' bindtap="selectRight"></view>
</image>
</block>
</view>
</view>
</block>
<button class='submit_button' bindtap='submit_evaluate' type='primary'>提交</button>
</view>
</view>
js文件
Page({
data: {
evaluate_contant: ['评价条目一', '评价条目二', '评价条目三',],
stars: [0, 1, 2, 3, 4],
normalSrc: '../../images/no-star.png',
selectedSrc: '../../images/full-star.png',
halfSrc: '../../images/half-star.png',
score: 0,
scores: [0, 0, 0],
},
// 提交事件
submit_evaluate: function () {
console.log('评价得分' + this.data.scores)
},
//点击左边,半颗星
selectLeft: function (e) {
var score = e.currentTarget.dataset.score
if (this.data.score == 0.5 && e.currentTarget.dataset.score == 0.5) {
score = 0;
}
this.data.scores[e.currentTarget.dataset.idx] = score,
this.setData({
scores: this.data.scores,
score: score
})
},
//点击右边,整颗星
selectRight: function (e) {
var score = e.currentTarget.dataset.score
this.data.scores[e.currentTarget.dataset.idx] = score,
this.setData({
scores: this.data.scores,
score: score
})
}
})
wxss
/*评价区域 */
.container .evaluate_contant .evaluate_item {
font-size: 30rpx;
color: gray;
margin-left: 20rpx;
margin-top: 30rpx;
}
/*评价标题 */
.container .evaluate_contant .evaluate_item .evaluate_title {
display: inline-block;
}
/*评价盒子 */
.container .evaluate_contant .evaluate_item .evaluate_box {
position: absolute;
left: 220rpx;
width: 100%;
display: inline-block;
}
/*星星评价的每个图片 */
.container .evaluate_contant .evaluate_item .evaluate_box .star-image {
position: absolute;
width: 40rpx;
height: 40rpx;
src: "../../images/no-star.png";
}
/*星星的左边和右边区域<点击左边半个星星,点击右边整个星星> */
.container .evaluate_contant .evaluate_item .evaluate_box .star-image .item {
position: absolute;
top: 0rpx;
width: 20rpx;
height: 40rpx;
}
/*按钮 */
.container .evaluate_contant .submit_button {
height: 60rpx;
font-size: 30rpx;
line-height: 60rpx;
margin: 20rpx;
}
来源:https://blog.csdn.net/feng2qing/article/details/79366249


猜你喜欢
- XML 的使用越来越广泛,但是很多 XML 的结构并不好。即便结构良好,也常常设计得很糟,使得处理和维护非常困难。而大部分用于 XML 的基
- 本文实例讲述了Python提示[Errno 32]Broken pipe导致线程crash错误解决方法。分享给大家供大家参考。具体方法如下:
- django模板使用media文件夹,想要在前端通过{{ MEDIA_URL }}无法显示图片,没有取到Media_url的值解决办法:TE
- 使用threading写的一个定时器任务demo:import timeimport sysimport signalimport date
- 最近在使用Python开发系统,需连接mysql数据库,我用的是Python3连接MySQL8.0,其中老是报错以下问题:网上给了各种各样的
- 多线程锁lock=threading.Lock()使用疑问多线程任务是同时执行的,如果我们需要先执行线程a,再执行线程b,需要怎么办呢?解决
- 性能监控一、web项目(如gin中)1.使用ginpprofimport "github.com/DeanThompson/gin
- matlab程序读取单片机通过串口传来的IMU角度数据,并用曲线显示出来。上传的值为float型,每个数据后有回车符。范围90~-90主文件
- 概述虽然Python的强项在人工智能,数据处理方面,但是对于日常简单的应用,Python也提供了非常友好的支持(如:Tkinter),本文主
- 本文实例为大家分享了python访问者模式代码,供大家参考,具体内容如下"""访问者模式""
- 1.VUE验证邮箱export const isEmail = (s) => { return /^([a-
- REST_FRAMEWORK 配置对使用 rest_framework 框架的项目来说,可以使用框架的设置来对api的访问频率进行限制RES
- 在Matplotlib实际使用中会有生成不同大小subplots的需求。import numpy as np import matplotl
- 系统中对Razor的支持包括两部分,其中之一就是自定义RazorViewEngine一、自定义RazorViewEngine在Global.
- 概述编程的内核是数学,而测试的本质是计算,专业名词叫容量预估,而测试的大体就是用程序模拟程序,检测程序的正确性,有两个点需要注意,QPS最佳
- asp定时生成静态HTML的代码,对于缓解服务器压力有很大帮主,需要的朋友可以参考下。<% '判断是否要生成新的HT
- 背景:使用pip install SciPy的格式安装python函数库SciPy的时候,发现老是报错,从网上找信息也没找到合适的解决办法,
- 本文实例讲述了c#操作附加数据库的方法。分享给大家供大家参考。具体如下:/// <summary>/// 附加数据库/// &l
- sys;//系统管理员,拥有最高权限 system;//本地管理员,次高权限 scott;//普通用户,密码默认为tiger,默认未解锁 s
- MySQL Group By用法我们现在回到函数上。记得我们用 SUM 这个指令来算出所有的 Sales (营业额)吧!如果我们的需求变成是