sard-uniapp
Version:
sard-uniapp 是一套基于 Uniapp + Vue3 框架开发的兼容多端的 UI 组件库
23 lines (22 loc) • 790 B
JavaScript
import { toTouchEvent } from '../utils';
export function useMouseDown(startCallback, moveCallback, endCallback) {
return (event) => {
// #ifdef WEB
if ('ontouchstart' in document) {
return;
}
startCallback?.(toTouchEvent(event));
const moveHandler = (event) => {
event.preventDefault();
moveCallback?.(toTouchEvent(event));
};
const upHandler = (event) => {
endCallback?.(toTouchEvent(event));
document.removeEventListener('mousemove', moveHandler);
document.removeEventListener('mouseup', upHandler);
};
document.addEventListener('mousemove', moveHandler);
document.addEventListener('mouseup', upHandler);
// #endif
};
}