マウスオーバーしつづけると動く

はてなスター削除の時のように、ある要素にマウスオーバーし続けるとある動作が起こるようにする jQuery プラグインを書いた。

(function($) {

$.fn.mouseOverDelay = function(delay, callback) {
  return this.each(function(){
    var tid;
    $(this).hover(function(){
      tid = setTimeout(callback, delay * 1000);
    }, function(){
      clearTimeout(tid);
    });
  });
}

})(jQuery);

/* 
  例: id=foo な要素に 5 秒間マウスオーバーし続けると 'bar' とアラート
  $('#foo').mouseOverDelay(5, function() { alert('bar') });
*/


名前が適当すぎて泣ける。