Add gestures, and mouse events
This commit is contained in:
46
src/utils/event.js
Normal file
46
src/utils/event.js
Normal file
@@ -0,0 +1,46 @@
|
||||
// start event
|
||||
export function addStartEventListener(source, cb) {
|
||||
source.addEventListener('mousedown', cb)
|
||||
source.addEventListener('touchstart', cb)
|
||||
}
|
||||
export function removeStartEventListener(source, cb) {
|
||||
source.removeEventListener('mousedown', cb)
|
||||
source.removeEventListener('touchstart', cb)
|
||||
}
|
||||
|
||||
// end event
|
||||
export function addEndEventListener(source, cb) {
|
||||
source.addEventListener('mouseup', cb)
|
||||
source.addEventListener('touchend', cb)
|
||||
}
|
||||
export function removeEndEventListener(source, cb) {
|
||||
source.removeEventListener('mouseup', cb)
|
||||
source.removeEventListener('touchend', cb)
|
||||
}
|
||||
|
||||
// move event
|
||||
export function addMoveEventListener(source, cb) {
|
||||
source.addEventListener('mousemove', cb)
|
||||
source.addEventListener('touchmove', cb)
|
||||
}
|
||||
export function removeMoveEventListener(source, cb) {
|
||||
source.removeEventListener('mousemove', cb)
|
||||
source.removeEventListener('touchmove', cb)
|
||||
}
|
||||
|
||||
// resize event
|
||||
export function addResizeEventListener(cb) {
|
||||
window.addEventListener('resize', cb)
|
||||
}
|
||||
export function removeResizeEventListener(cb) {
|
||||
window.removeEventListener('resize', cb)
|
||||
}
|
||||
|
||||
export function createDispatcher(source) {
|
||||
function dispatch(event, data) {
|
||||
source.dispatchEvent(new CustomEvent(event, {
|
||||
detail: data
|
||||
}))
|
||||
}
|
||||
return dispatch
|
||||
}
|
||||
Reference in New Issue
Block a user