小程序实现选择题选择效果
程序员文章站
2022-09-24 13:38:10
本文实例为大家分享了小程序实现选择题的显示方法,供大家参考,具体内容如下
下面是三张效果图:初始图,选项正确图,选项错误图。
wxml代码:
本文实例为大家分享了小程序实现选择题的显示方法,供大家参考,具体内容如下
下面是三张效果图:初始图,选项正确图,选项错误图。
wxml代码:
<view class='selection'> <view class='{{view1}}' bindtap='view1click' id='1'>a</view> <view class='{{view2}}' bindtap='view2click' id='2'>b</view> <view class='{{view3}}' bindtap='view3click' id='3'>c</view> <view class='{{view4}}' bindtap='view4click' id='4'>d</view> </view>
js代码:
page({ /** * 页面的初始数据 */ data: { view1: 'selection1', view2: 'selection1', view3: 'selection1', view4: 'selection1', // 默认答案为2,后台会给的 key: 2, // 选项是否被点击 isselect: false }, view1click: function(e) { var select = e.target.id // 选项没被选择时将执行 if (!this.data.isselect) { // 将选项设置为“已被选择” this.setdata({ isselect: true }) // 注意!此处必须是'=='而不是'=' if (select == this.data.key) { this.setdata({ view1: 'selection2' }) } else { this.setdata({ view1: 'selection3' }) // 将正确选项显示出来 this.showanswer(this.data.key) } } }, view2click: function(e) { var select = e.target.id // 选项没被选择时将执行 if (!this.data.isselect) { this.setdata({ isselect: true }) // 注意!此处必须是'=='而不是'=' if (select == this.data.key) { this.setdata({ view2: 'selection2' }) } else { this.setdata({ view2: 'selection3' }) // 将正确选项显示出来 this.showanswer(this.data.key) } } }, view3click: function(e) { var select = e.target.id // 选项没被选择时将执行 if (!this.data.isselect) { this.setdata({ isselect: true }) // 注意!此处必须是'=='而不是'=' if (select == this.data.key) { this.setdata({ view3: 'selection2' }) } else { this.setdata({ view3: 'selection3' }) // 将正确选项显示出来 this.showanswer(this.data.key) } } }, view4click: function(e) { var select = e.target.id // 选项没被选择时将执行 if (!this.data.isselect) { this.setdata({ isselect: true }) // 注意!此处必须是'=='而不是'=' if (select == this.data.key) { this.setdata({ view4: 'selection2' }) } else { this.setdata({ view4: 'selection3' }) // 将正确选项显示出来 this.showanswer(this.data.key) } } }, showanswer: function(key) { // 通过swith语句判断正确答案,从而显示正确选项 switch (key) { case 1: this.setdata({ view1: 'selection2' }) break; case 2: this.setdata({ view2: 'selection2' }) break; case 3: this.setdata({ view3: 'selection2' }) break; default: this.setdata({ view4: 'selection2' }) } } })
wxss代码:
.selection1{ width: 400rpx; height: 150rpx; background-color: grey; display: flex; flex-direction: column; justify-content: space-around; align-items: center; } .selection2{ width: 400rpx; height: 150rpx; background-color: blue; display: flex; flex-direction: column; justify-content: space-around; align-items: center; } .selection3{ width: 400rpx; height: 150rpx; background-color: red; display: flex; flex-direction: column; justify-content: space-around; align-items: center; } .selection{ width: 750rpx; height: 800rpx; display: flex; flex-direction: column; justify-content: space-around; align-items: center; }
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。