ボタンがあります。ユーザーがボタンを1回クリックしたか、長押ししたかに基づいて、さまざまな関数を呼び出したいと思います。
シングルクリックは問題なく動作しますが、ボタンを長押しすると、長押し機能が実行され、続いてシングルクリック機能が実行されます。
これが私が使用しているコードです。
var timeout, clicker = $('#clicker');
var count = 0;
clicker.mousedown(function(){
timeout = setInterval(function(){
clicker.text(count++);
}, 500);
return false;
});
$(document).mouseup(function(){
clearInterval(timeout);
return false;
});
clicker.click(function(){
$(this).css('background', 'red');
return false;
});
</ p>
このフィドルを参照してください:http://jsfiddle.net/8FmRd/181/
最初の長押しで、divの色が赤に変わらないはずです。