Handle touches

This commit is contained in:
2022-02-12 16:17:35 +03:00
parent e0016c9a04
commit c432bcd580
2 changed files with 13 additions and 1 deletions

View File

@@ -1,6 +1,6 @@
{ {
"name": "vue-three-d-mockup", "name": "vue-three-d-mockup",
"version": "0.2.0", "version": "0.2.1",
"description": "📱 A 3D phone mockup component to showcase your apps", "description": "📱 A 3D phone mockup component to showcase your apps",
"author": "Anatoly Kopyl <akopyl@radner.ru>", "author": "Anatoly Kopyl <akopyl@radner.ru>",
"keywords": ["vue", "mockup-generator", "threejs", "design", "mockup"], "keywords": ["vue", "mockup-generator", "threejs", "design", "mockup"],

View File

@@ -4,6 +4,10 @@
@mouseenter="handleMouseEnter" @mouseenter="handleMouseEnter"
@mouseleave="handleMouseLeave" @mouseleave="handleMouseLeave"
@mousemove="handleMouseMove" @mousemove="handleMouseMove"
@touchstart="handleMouseEnter"
@touchend="handleMouseLeave"
@touchmove="handleTouchMove"
/> />
</template> </template>
@@ -235,6 +239,13 @@ export default {
mouseY = -(event.clientY - rect.top - rect.height / 2); mouseY = -(event.clientY - rect.top - rect.height / 2);
} }
function handleTouchMove(event) {
event.preventDefault();
const rect = container.value.getBoundingClientRect();
mouseX = event.touches[0].clientX - rect.left - rect.width / 2;
mouseY = -(event.touches[0].clientY - rect.top - rect.height / 2);
}
onMounted(() => { onMounted(() => {
init(); init();
animate(0); animate(0);
@@ -245,6 +256,7 @@ export default {
handleMouseEnter, handleMouseEnter,
handleMouseLeave, handleMouseLeave,
handleMouseMove, handleMouseMove,
handleTouchMove,
}; };
}, },
}; };