关于前端如何实现九宫格抽奖,做法如下:
以为vue为例,通过for循环把数据循环出来,用css定位,定位出每个盒子的位置
使用递归的方式(自己调用自己),通过延时器setTimeOut()控制旋转速度,直至最终停下:以下代码经供参考
<div class="lunpan-box">
<div class="gift-part-box">
<div class="Anniversary-gift-part" v-for="(item,index) in dataList" :key="index" :class="`gift-part${index}` ">
<img v-if="item.iconPath" class="gift-img" :src="`${activityData.imagePath}`+ `/`+`${item.iconPath}`" />
<div class="gift_text">{
{item.enName}}</div>
</div>
</div>
<div class="Anniversary-draw-lottery" @click="startRoll">