请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

轮播图

this.slider.on(‘scrollEnd’, this._onScrollEnd)
this.slider.on(‘touchEnd’, () => {
if (this.autoPlay) {
this._play()
}
})
为什么要在touchEnd里也做一个播放的判断,不是在scrollEnd做过了吗?是在移动端兼听不到吗touchEnd吗?

正在回答

1回答

ustbhuangyi 2019-10-16 12:38:47

touchEnd 并不是 DOM 的 touchend 事件,而是 BS 派发出来的事件,也是在用户手指拖动离开的时候触发的,这个和 scrollEnd 时机是不同的,scrollEnd 是滚动动画停止的时候派发的。这里需要判断是因为在滚动开始前会停止自动播放的计时器。

0 回复 有任何疑惑可以回复我~
  • 提问者 慕慕5175426 #1
    非常感谢!
    回复 有任何疑惑可以回复我~ 2019-10-16 14:43:41
  • 提问者 慕慕5175426 #2
    但是滑动一次,两个事件都会触发。感觉没有必要加touchend?????
    回复 有任何疑惑可以回复我~ 2019-10-16 14:52:14
  • MeSKiL 回复 提问者 慕慕5175426 #3
    应该是为了让手指点下的时候,关闭自动轮播,抬起的时候再重新开启吧
    回复 有任何疑惑可以回复我~ 2019-10-16 15:46:04
问题已解决,确定采纳
还有疑问,暂不采纳
意见反馈 帮助中心 APP下载
官方微信