徐々に文字列を表示する

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN">
<title>TEST</title>
<body>

<div id="a">&nbsp;</div>
<div id="b">&nbsp;</div>

<script type="text/javascript"><!--

var substrTimer = (function ( ) {
  return function ( target, str, interval ) {
    var doc = document;
    var obj = {
      'substr' : str.split( '' ),
      'count'  : 0,
      'timerId': null
    };
    var node = doc.getElementById( target );

    if( node ) {
      while( node.hasChildNodes( ) )
        node.removeChild( node.lastChild );
      
      obj.target = doc.createTextNode( '' );
      node.appendChild( obj.target );

      obj.timerId = setInterval(
        (function ( _obj ) {
          return function ( ) {
            var character = _obj.substr[ _obj.count ];

            _obj.count += 1;

            if( character )
              _obj.target.nodeValue += character;
            else
              clearInterval( _obj.timerId );
            
          };
        } )( obj ), interval );
    }
  };
})();

substrTimer( 'a', 'きょうのてんきは、はれのちくもりのちあめのちゆき。', 100 );
substrTimer( 'b', 'けいほうは、ありません。', 200 );

</script>