desktop touch events
This commit is contained in:
parent
5eeb3a7768
commit
314b299103
|
@ -72,7 +72,8 @@ export default {
|
||||||
thumbRowOffsets: new Array(this.galleries.length),
|
thumbRowOffsets: new Array(this.galleries.length),
|
||||||
isLeftDesktopNavActive: false,
|
isLeftDesktopNavActive: false,
|
||||||
resizeIsThrottling: false,
|
resizeIsThrottling: false,
|
||||||
isThumbsScrolling: false
|
isThumbsScrolling: false,
|
||||||
|
touchDownPosition: null
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|
||||||
|
@ -99,6 +100,8 @@ export default {
|
||||||
this.updateElements()
|
this.updateElements()
|
||||||
})
|
})
|
||||||
window.addEventListener('resize', this.handleResize)
|
window.addEventListener('resize', this.handleResize)
|
||||||
|
this.$refs.galleryThumbsList.addEventListener('touchstart', this.handleTouch)
|
||||||
|
this.$refs.galleryThumbsList.addEventListener('touchend', this.handleTouch)
|
||||||
this.$refs.galleryThumbsList.addEventListener('wheel', this.handleThumbsScroll)
|
this.$refs.galleryThumbsList.addEventListener('wheel', this.handleThumbsScroll)
|
||||||
// firefox
|
// firefox
|
||||||
this.$refs.galleryThumbsList.addEventListener('mousewheel', this.handleThumbsScroll)
|
this.$refs.galleryThumbsList.addEventListener('mousewheel', this.handleThumbsScroll)
|
||||||
|
@ -177,7 +180,7 @@ export default {
|
||||||
handleThumbsScroll(event) {
|
handleThumbsScroll(event) {
|
||||||
if (event.wheelDeltaX) {
|
if (event.wheelDeltaX) {
|
||||||
if (event.wheelDeltaX > 0) {
|
if (event.wheelDeltaX > 0) {
|
||||||
this.soThumbScroll('right')
|
this.doThumbScroll('right')
|
||||||
} else if (event.wheelDeltaX < 0) {
|
} else if (event.wheelDeltaX < 0) {
|
||||||
this.doThumbScroll('left')
|
this.doThumbScroll('left')
|
||||||
}
|
}
|
||||||
|
@ -189,6 +192,17 @@ export default {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
handleTouch(event) {
|
||||||
|
if (event.type === 'touchstart') {
|
||||||
|
this.touchDownPosition = event.changedTouches[0].clientX
|
||||||
|
} else if (event.type === 'touchmove') {
|
||||||
|
event.preventDefault()
|
||||||
|
} else if (event.type === 'touchend') {
|
||||||
|
let xPos = event.changedTouches[0].clientX
|
||||||
|
let direction = this.touchDownPosition - xPos < 0 ? 'left' : 'right'
|
||||||
|
this.doThumbScroll(direction)
|
||||||
|
}
|
||||||
|
},
|
||||||
doThumbScroll(direction) {
|
doThumbScroll(direction) {
|
||||||
if (this.isThumbsScrolling) { return }
|
if (this.isThumbsScrolling) { return }
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue