swipe-listener
Version:
Zero-dependency, minimal swipe-gesture listener for the web.
73 lines (66 loc) • 1.96 kB
HTML
<html>
<head>
<meta charset="utf-8" />
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<title>Swipe-listener Demo</title>
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="stylesheet" type="text/css" media="screen" href="main.css" />
</head>
<body>
<div id="container">
Swipe Here
</div>
<div id="message"></div>
<script src="dist/swipe-listener.min.js"></script>
<script>
let setMessage = function (msg) {
document.querySelector('#message').innerHTML = msg;
}
let container = document.querySelector('#container');
container.addEventListener('touchstart', function () {
setMessage('');
});
container.addEventListener('mousedown', function () {
setMessage('');
});
var listener = SwipeListener(container);
container.addEventListener('swipe', function (e) {
console.log('swipe', e.detail);
var d = e.detail.directions;
if (d.top) {
if (d.right) {
setMessage('Swiped top-right.');
} else if (d.left) {
setMessage('Swiped top-left.');
} else {
setMessage('Swiped top.');
}
} else if (d.bottom) {
if (d.right) {
setMessage('Swiped bottom-right.');
} else if (d.left) {
setMessage('Swiped bottom-left.');
} else {
setMessage('Swiped bottom.');
}
} else {
if (d.right) {
setMessage('Swiped right.');
} else if (d.left) {
setMessage('Swiped left.');
}
}
});
container.addEventListener('swiping', function (e) {
console.log('swiping', e.detail);
});
container.addEventListener('swiperelease', function (e) {
console.log('swiperelease', e.detail);
});
container.addEventListener('swipecancel', function (e) {
console.log('swipecancel', e.detail);
});
</script>
</body>
</html>