簡単なサイドバーの表示、非表示をスワイプで出来るようになったのですが、
指の動きについてくる形で表示、非表示(TwitterやSlackのサイドバーなど)はどのようにやっているのでしょうか?
教えて頂けると幸いです。
$(function() { function setSwipe(elem) { let t = document.querySelector(elem); let startX; let startY; let moveX; let moveY; let dist = 20; t.addEventListener("touchstart", function(e) { e.preventDefault(); startX = e.touches[0].pageX; startY = e.touches[0].pageY; }); t.addEventListener("touchmove", function(e) { e.preventDefault(); moveX = e.changedTouches[0].pageX; moveY = e.changedTouches[0].pageY; }); t.addEventListener("touchend", function(e) { if (startX > moveX && startX > moveX + dist) { $('.menubar').css('display', 'none'); } else if (startX < moveX && startX + dist < moveX) { $('.menubar').css('display', 'block'); } }); }; setSwipe('body'); });
あなたの回答
tips
プレビュー