WEBAPP开发之微信小程序实现星星评价效果
白羽 2018-12-29 来源 :网络 阅读 1169 评论 0

摘要:本文将带你了解WEBAPP开发微信小程序实现星星评价效果,希望本文对大家学WEBAPP有所帮助。

    本文将带你了解WEBAPP开发微信小程序实现星星评价效果,希望本文对大家学WEBAPP有所帮助。


               

           

代码实现

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;

}

   

 


本文由职坐标整理并发布,希望对同学们有所帮助。了解更多详情请关注职坐标移动开发之WebApp频道!


本文由 @白羽 发布于职坐标。未经许可,禁止转载。
喜欢 | 3 不喜欢 | 1
看完这篇文章有何感觉?已经有4人表态,75%的人喜欢 快给朋友分享吧~
评论(0)
后参与评论

您输入的评论内容中包含违禁敏感词

我知道了

助您圆梦职场 匹配合适岗位
验证码手机号,获得海同独家IT培训资料
选择就业方向:
人工智能物联网
大数据开发/分析
人工智能Python
Java全栈开发
WEB前端+H5

请输入正确的手机号码

请输入正确的验证码

获取验证码

您今天的短信下发次数太多了,明天再试试吧!

提交

我们会在第一时间安排职业规划师联系您!

您也可以联系我们的职业规划师咨询:

小职老师的微信号:z_zhizuobiao
小职老师的微信号:z_zhizuobiao

版权所有 职坐标-一站式IT培训就业服务领导者 沪ICP备13042190号-4
上海海同信息科技有限公司 Copyright ©2015 www.zhizuobiao.com,All Rights Reserved.
 沪公网安备 31011502005948号    

©2015 www.zhizuobiao.com All Rights Reserved

208小时内训课程