微信小程式實現星星評分效果
思路很簡單,小星星都是一張張獨立的圖片,點選的時候改變圖片的路徑就可以了。
我是用背景圖片做的,先給盒子設定背景圖片為灰色的小星星,盒子是根據js檔案中的stars陣列迴圈出來的,根據flag的值確定是灰色的小星星還是黃色的小星星,點選的時候獲取當下這個盒子的index值,然後去更改stars陣列中索引值小於等於index的每一項的flag就可以了。
當然,也可以用類名來控制灰色和黃色的小星星,在點選的時候操作類名也是可以實現的。
<view class="container">
<view class='stars'>
<image src=''></image>
<view class='content'>
<view>評分</view>
<view>
<view wx:for="{{stars}}" wx:key="" style='background:url("{{item.flag==1?item.bgImg:item.bgfImg}}") no-repeat top; background-size:100%;' data-index="{{index}}" bindtap='score'></view>
</view>
</view>
</view>
<view class='reviews'>
<textarea placeholder='請寫下購買體會或商品的相關資訊,可以拉其他小夥伴提供參考~(評價在100字以內)'></textarea>
</view>
</view>
.stars{
padding:85rpx 0 60rpx 273rpx;
box-sizing: border-box;
position: relative;
border-bottom: 1rpx solid #ececec;
background-color: #fff;
}
.stars image{
width: 190rpx;
height: 190rpx;
border: 1rpx solid #000;
position: absolute;
top: 41rpx;
left: 36rpx;
}
.stars .content view{
font-size: 32rpx;
color: #4a4a4a;
}
.stars .content>view:last-of-type{
height: 40rpx;
margin-top: 48rpx;
}
.stars .content>view:last-of-type view{
float: left;
width: 42rpx;
height: 42rpx;
margin-right: 25rpx;
background-size: 100% 100%;
}
data: {
stars:[
{
flag:1,
bgImg: "http://wximg.youtasc.com/star.png",
bgfImg:"http://wximg.youtasc.com/f_star.png"
},
{
flag: 1,
bgImg: "http://wximg.youtasc.com/star.png",
bgfImg: "http://wximg.youtasc.com/f_star.png"
},
{
flag: 1,
bgImg: "http://wximg.youtasc.com/star.png",
bgfImg: "http://wximg.youtasc.com/f_star.png"
},
{
flag: 1,
bgImg: "http://wximg.youtasc.com/star.png",
bgfImg: "http://wximg.youtasc.com/f_star.png"
},
{
flag: 1,
bgImg: "http://wximg.youtasc.com/star.png",
bgfImg: "http://wximg.youtasc.com/f_star.png"
}
]
},
score:function(e){
var that=this;
for(var i=0;i<that.data.stars.length;i++){
var allItem = 'stars['+i+'].flag';
that.setData({
[allItem]: 1
})
}
var index=e.currentTarget.dataset.index;
for(var i=0;i<=index;i++){
var item = 'stars['+i+'].flag';
that.setData({
[item]:2
})
}
}
轉載地址:https://blog.csdn.net/weixin_41257563/article/details/82756738
相關文章
- 原生Javascript實現星星評分元件JavaScript元件
- 微信小程式實現卡片左右滑動效果微信小程式
- 微信小程式功能之全屏滾動效果的實現程式碼微信小程式
- 微信小程式左滑效果微信小程式
- 當微信小程式遇上TensorFlow:小程式實現微信小程式
- 微信小程式翻牌抽獎效果微信小程式
- 微信小程式 遮罩功能實現微信小程式遮罩
- 微信小程式實現軌跡回放,微信原生小程式,基於uniapp的小程式?微信小程式APP
- 小程式實現微信 【我的】介面
- 微信小程式(JAVAScript)實現餅圖微信小程式JavaScript
- 微信小程式實現換膚功能微信小程式
- JS實現監控微信小程式JS微信小程式
- 用純css實現打星星效果(三)CSS
- 微信小程式之文字向上滾動效果微信小程式
- 微信小程式實現WebSocket心跳重連微信小程式Web
- 微信小程式實現釋出作業微信小程式
- 微信,支付寶小程式實現原理概述
- 邊做邊學入門微信小程式之仿豆瓣評分微信小程式
- 微信小程式分頁載入微信小程式
- 微信小程式-實現實時聊天功能 前端部分微信小程式前端
- VUE實現評分效果和不同型別分數展示效果元件Vue型別元件
- 微信小程式-基於高德地圖API實現天氣元件(動態效果)微信小程式地圖API元件
- 微信小程式XR黑色背景影片透明效果(一)微信小程式
- 微信小程式如何開發跑馬燈效果?微信小程式
- 微信小程式實現簽到的日曆微信小程式
- fiddler 實現 微信(PC端)小程式抓包
- 微信小程式 簡易搜尋功能實現微信小程式
- 當微信小程式遇上TensorFlow:Server端實現微信小程式Server
- 微信小程式實現商城案例(賦原始碼)微信小程式原始碼
- 微信小程式自定義元件實現 tabBar、navBar微信小程式元件tabBar
- 微信小程式如何實現自動退款功能?微信小程式
- 微信小程式實現全域性搜尋程式碼高亮微信小程式
- 10行程式碼實現微信小程式支付功能,使用小程式雲開發實現小程式支付功能(行程微信小程式
- 2018-10-15 微信小程式特殊效果合集微信小程式
- 微信小程式底部實現自定義動態Tabbar微信小程式tabBar
- 微信公眾號回覆小程式卡片如何實現?
- 微信小程式實現搜尋關鍵詞高亮微信小程式
- 微信小程式Tree自定義控制元件實現微信小程式控制元件