ジェスチャーライブラリ「Hammer.js」を使って、要素の長押しによる疑似コンテキストメニューを表示したいと考えています。
以下のコードの場合、デスクトップブラウザでは特に問題はなかったのですが、モバイルブラウザ(Android 4.0の標準ブラウザにて確認)では、追加した要素がポインターの箇所に一致すると、追加されたタイミングでmousedownイベントが発生するため、メニューが表示されるタイミングでポインターを放すとすぐに疑似メニューが消える不都合が生じます。
モバイルブラウザでこの現象を回避する良い案はございますでしょうか。
`
$("#t").hammer().on("hold", function(){
var d = $("<div>").css({
width:"100px",
height:"100px",
backgroundColor:"white",
});
var down = false;
d.on({
mousedown:function(e){
down = true;
d.css("background-color", "black");
},
mouseup:function(e){
if(down == false) return;
down = false;
d.remove(); } }); $(this).append(d);
});
`
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。