Skip to content

Commit cab9112

Browse files
committed
Improvement - VueUiCarouselTable - Added touch events
1 parent 17698ac commit cab9112

File tree

1 file changed

+15
-0
lines changed

1 file changed

+15
-0
lines changed

src/components/vue-ui-carousel-table.vue

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -166,6 +166,18 @@ function pauseOnHover() {
166166
pauseAnimation();
167167
}
168168
169+
const resumeTouchTimeout = ref(null);
170+
171+
function pauseOnTouch() {
172+
pauseAnimation();
173+
clearTimeout(resumeTouchTimeout.value);
174+
}
175+
176+
function resumeAfterDelay() {
177+
clearTimeout(resumeTouchTimeout.value);
178+
resumeTouchTimeout.value = setTimeout(resumeAnimation, 1000);
179+
}
180+
169181
watch(
170182
() => FINAL_CONFIG.value.animation.use,
171183
(newVal) => {
@@ -255,6 +267,9 @@ defineExpose({
255267
:class="{ 'vue-ui-responsive' : isResponsive, 'is-playing': !isPaused }"
256268
@mouseenter="pauseOnHover()"
257269
@mouseleave="resumeAnimation()"
270+
@touchstart="pauseOnTouch()"
271+
@touchend="resumeAfterDelay()"
272+
@touchcancel="resumeAfterDelay()"
258273
>
259274
<table
260275
class="vue-data-ui-carousel-table"

0 commit comments

Comments
 (0)