スマホでJavaScript or jQueryを使って長押し判定する方法はあるのだろうか?
【JavaScript】スマホのタッチの長押しイベント取得
を参考にすると以下のロジックでいけるみたい。
var isLongTap = false; var timerid; var $div = $('div'); $div.on('touchstart',function(){ timerid = setTimeout(function() { isLongTap = true; },750); }); $div.on('touchmove ',function(){ if(isLongTap){ }else{ } }); $div.on('touchend touchcancel',function(){ clearTimeout(timerid); if(isLongTap){ }else{ } });750ms後にキックされる関数内でフラグをtrueにして、長押し(ロングタップ)の判定をしています。
意外と役に立ちそうなので、もっと汎用性をもった作りにできたらなと。
0 コメント:
コメントを投稿