图片轮播问题
来源:4-4 轮播图组件实现(上)
Han
2018-05-24
export default {
name: 'Slider',
data () {
return {
sliderItem: [],
loop: true,
}
},
mounted () {
setTimeout(() => {
this.initScrollClass()
this.initScrollWidth()
this.initSlider()
}, 20)
},
methods: {
initScrollWidth () {
let sliderWidth = this.$refs.sliderWrap.clientWidth
let scrollWidth = sliderWidth * this.sliderItem.length
if (this.loop) {
scrollWidth += sliderWidth * 2
}
this.$refs.sliderGroup.style.width = scrollWidth + 'px'
},
initScrollClass () {
this.sliderItem = this.$refs.sliderGroup.children
for (let item of this.sliderItem) {
addClass(item, 'slider-item')
}
console.log(this.sliderItem.length)
},
initSlider () {
this.slider = new BScroll(this.$refs.sliderWrap, {
scrollX: true,
scrollY: false,
momentum: false,
snap: {
threshold: 0.3,
speed: 400,
loop: this.loop,
}
})
}
}
}
mounted后第一次片手动滚动图片时有种卡顿的感觉,没有任何过渡就到了第二张。长按时会出现bug:
说这个page[0]是undefined
好像是点了一下才能初始化BScroll,才能正常使用
1回答
-
ustbhuangyi
2018-05-24
建议去对比我的源码,注意 CSS 部分的书写
012018-05-24
相似问题