クリック回数でイベントを振り分ける

書いてアップしてから気づく。無駄なクロージャーだった。以下訂正
http://oshiete.goo.ne.jp/qa/6071280.html

<!DOCTYPE html>
<title></title>
<body>
<table id="hoge" border="1">
  <tr>
    <td>Click Test
</table>
<script>

//@cc_on

var ClickListener = function ( interval /* ,Function1, Function2, .. */ ) {
  var functionList = arguments; //?
  var timerId, counter;

  var reset = function ( mode ) {
    if (mode)
      clearTimeout (timerId), timerId = null;
    else
      counter = 1;
  };
  
  this.listener = function ( evt ) {
    var n = evt./*@if( @_jscript ) srcElement @else@*/ target /*@end@*/;
    var cEvent = n.ownerDocument.createEventObject (evt);
    var func;

    timerId && reset(1);

    if (func = functionList[ counter++ ]) {
      document.getElementById('w').value="set click ="+counter;
      timerId = setTimeout (function () {
          reset ();
          func.call (null, cEvent);
        }, interval);
    }
    else
      reset();
  };

  reset();
};

//___

var fuga = new ClickListener (800,
  function (e) { alert("1 click! " + e.type);},
  function (e) { alert("2 click! " + e.type);},
  function (e) { alert("3 click! " + e.type);}
);

//___

document.getElementById('hoge').
/*@if (@_jscript_version > 5.8)
    addEventListener(
  @elif (@_jscript_version <= 5.8)
    attachEvent( 'on'+ 
  @else@*/
    addEventListener(
/*@end@*/
  'click', fuga.listener, false);

</script>


think49さんも、><さんも、ちゃんと寝てるの?体に悪いですぜぇ!