js代码块
spellingSollt() {
var scrollDiv = $("#spelling"),
$ul = scrollDiv.find("ul"),
$li = scrollDiv.find("li"),
$length = $li.length,
$liHeight = $li.height(),
num = 0;
if(scrollDiv.length == 0) {
return;
}
if($length > 1) {
$ul.append($li.eq(0).clone());
setInterval(
function() {
num++;
// * (num) 样式错乱老是会留下间隙 问题就出在num元素里面 这个是控制元素偏移量
$ul.addClass("animate").css("-webkit-transform", "translateY(-" + $liHeight+ "px)");
setTimeout(
function() {
if(num == $length) {
$ul.removeClass("animate").css("-webkit-transform", "translateY(0)");
num = 0;
}
}, 80);
}, 3000);
}
},
html
<div class="spelling-box" id="spelling" v-if='spellingArr.length > 1'>
<ul>
<li class="spelling-box-list" v-for="(item,index) in spellingArr">
<div class="spelling-box-list-left"><img :src="item.image" alt=""></div>
<div class="spelling-box-list-text">
<div class="spelling-box-list-xxi">
<div>{{item.name}}</div>
<div class="spelling-time1" :data-time="item.time">{{item.time}}</div>
</div>
<div>还差{{item.age}}人完成拼单</div>
</div>
<div class="spelling-box-list-right">
<div @click="spellingSollt()"><span>去拼单</span></div>
</div>
</li>
</ul>
</div>