微信小程序 五星评分(包括半颗星评分)实例代码


Posted in Javascript onDecember 14, 2016

微信小程序 五星评分

一位同学说要写五星评分.要有半颗星的评分.

于是我做了个玩具.有空了做模块化,这代码看不下去了.

微信小程序 五星评分(包括半颗星评分)实例代码

代码:

1.index.wxml

<!--index.wxml-->

<block wx:for="{{stars}}">

 <image class="star-image" style="left: {{item*150}}rpx" src="{{key > item ?(key-item == 0.5?halfSrc:selectedSrc) : normalSrc}}">

  <view class="item" style="left:0rpx" data-key="{{item+0.5}}" bindtap="selectLeft"></view>

  <view class="item" style="left:75rpx" data-key="{{item+1}}" bindtap="selectRight"></view>

 </image>

</block>

2.index.wxss

.star-image {

 position: absolute;

 top: 50rpx;

 width: 150rpx;

 height: 150rpx;

 src: "../../images/normal.png";

}



.item {

 position: absolute;

 top: 50rpx;

 width: 75rpx;

 height: 150rpx;

}

3.index.js

//index.js

//CSDN微信小程序开发专栏:http://blog.csdn.net/column/details/13721.html

//获取应用实例

var app = getApp()

Page({

 data: {

  stars: [0, 1, 2, 3, 4],

  normalSrc: '../../images/normal.png',

  selectedSrc: '../../images/selected.png',

  halfSrc: '../../images/half.png',

  key: 0,//评分

 },

 onLoad: function () {

 },

 //点击右边,半颗星

 selectLeft: function (e) {

  var key = e.currentTarget.dataset.key

  if (this.data.key == 0.5 && e.currentTarget.dataset.key == 0.5) {

   //只有一颗星的时候,再次点击,变为0颗

   key = 0;

  }

  console.log("得" + key + "分")

  this.setData({

   key: key

  })



 },

 //点击左边,整颗星

 selectRight: function (e) {

  var key = e.currentTarget.dataset.key

  console.log("得" + key + "分")

  this.setData({

   key: key

  })

 }

})

代码下载

感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

Javascript 相关文章推荐
jQuery maxlength文本字数限制插件
Apr 16 Javascript
Javascript遍历table中的元素示例代码
Jul 08 Javascript
TinyMCE提交AjaxForm获取不到数据的解决方法
Mar 05 Javascript
jquery实现简单的无缝滚动
Apr 15 Javascript
javascript实现的固定位置悬浮窗口实例
Apr 30 Javascript
javascript实现点击按钮弹出一个可关闭层窗口同时网页背景变灰的方法
May 13 Javascript
js+css实现上下翻页相册代码分享
Aug 18 Javascript
js制作网站首页图片轮播特效代码
Aug 30 Javascript
JS无缝滚动效果实现方法分析
Dec 21 Javascript
Vue 组件(component)教程之实现精美的日历方法示例
Jan 08 Javascript
vue中实现高德定位功能
Dec 03 Javascript
原生js实现的金山打字小游戏(实例代码详解)
Mar 16 Javascript
浅谈Javascript中的Label语句
Dec 14 #Javascript
详解jQuery中基本的动画方法
Dec 14 #Javascript
浅析上传头像示例及其注意事项
Dec 14 #Javascript
实现点击下箭头变上箭头来回切换的两种方法【推荐】
Dec 14 #Javascript
jQuery 常见小例汇总
Dec 14 #Javascript
javascript基本数据类型及类型检测常用方法小结
Dec 14 #Javascript
用v-html解决Vue.js渲染中html标签不被解析的问题
Dec 14 #Javascript
You might like
PHP Ajax实现页面无刷新发表评论
2007/01/02 PHP
php中实现xml与mysql数据相互转换的方法
2014/12/25 PHP
YII2.0之Activeform表单组件用法实例
2016/01/09 PHP
PHP实现163邮箱自动发送邮件
2016/03/29 PHP
Yii2基于Ajax自动获取表单数据的方法
2016/08/10 PHP
Js 获取当前日期时间及其它操作实现代码
2021/03/04 Javascript
js tab效果的实现代码
2009/12/26 Javascript
Javascript类库的顶层对象名用户体验分析
2010/10/24 Javascript
js中查找最近的共有祖先元素的实现代码
2010/12/30 Javascript
jQuery.validate 常用方法及需要注意的问题
2013/03/20 Javascript
jQuery操作元素css样式的三种方法
2014/06/04 Javascript
node.js中实现同步操作的3种实现方法
2014/12/05 Javascript
Javascript编程之继承实例汇总
2015/11/28 Javascript
关于Vue.js 2.0的Vuex 2.0 你需要更新的知识库
2016/11/30 Javascript
JS实现简易刻度时钟示例代码
2017/03/11 Javascript
JavaScript使用ZeroClipboard操作剪切板
2017/05/10 Javascript
Vue ElementUI之Form表单验证遇到的问题
2017/08/21 Javascript
浅谈手写node可读流之流动模式
2018/06/01 Javascript
vue仿element实现分页器效果
2018/09/13 Javascript
axios全局注册,设置token,以及全局设置url请求网段的方法
2018/09/25 Javascript
使用Vue-cli 中为单独页面设置背景图片铺满全屏
2020/07/17 Javascript
vue项目,代码提交至码云,iconfont的用法说明
2020/07/30 Javascript
Ubuntu 14.04+Django 1.7.1+Nginx+uwsgi部署教程
2014/11/18 Python
用Python实现换行符转换的脚本的教程
2015/04/16 Python
浅析python中的分片与截断序列
2016/08/09 Python
Python 中 Virtualenv 和 pip 的简单用法详解
2017/08/18 Python
分享给Python新手们的几道简单练习题
2017/09/21 Python
Python3 jupyter notebook 服务器搭建过程
2018/11/30 Python
TensorFlow车牌识别完整版代码(含车牌数据集)
2019/08/05 Python
selenium3.0+python之环境搭建的方法步骤
2021/02/01 Python
公司总经理任命书
2014/06/05 职场文书
医院标语大全
2014/06/23 职场文书
质检员岗位职责
2015/02/03 职场文书
个人德育工作总结
2015/03/05 职场文书
2015年创先争优活动总结
2015/03/27 职场文书
redis配置文件中常用配置详解
2021/04/14 Redis