1秒後にアラート('a')する関数を作りたいです。ただし、その 1 秒の間にこの関数が再度呼び出されると、時間カウントはリセットされます。
お気に入り
bid();
//wait 500ms
bid();
//wait 300ms
bid();
//wait 1000ms
//now would be alert('a')
私はもう試した:
$.holdTime = function(key,time)
{
var time = time ? time : 500;
if (!$.isArray($.mmTimeHold)) {
$.mmTimeHold = new Array();
}
var isHold = $.mmTimeHold[key];
$.mmTimeHold[key] = true;
setTimeout(function(){
$.mmTimeHold[key]=false;
},time);
isHold = isHold === undefined ? false : isHold;
return isHold;
};
$.isHold = function(key)
{
if (!$.isArray($.mmTimeHold)) {
$.mmTimeHold = new Array();
}
var isHold = $.mmTimeHold[key];
isHold = isHold === undefined ? false : isHold;
return isHold;
}
しかし、期待どおりに機能しません。