Tested with MooTools 1.2
Your HTML..The javascript doesn't strip spaces at the beginning & end, so you will have it delayed if there is whitespace.
<h1 id="typewriter">Hello World!</h1>
The JavaScript
window.addEvent('domready', function() {
var index = 0;
var ele = $('typewriter');
var txt = ele.get('text');
ele.set('text', '');
var typewriter = (function() {
ele.set('text', ele.get('text') + txt[index]);
if(index++ == txt.length - 1) { $clear(typewriter); }
}).periodical(100);
});
periodical(100) sets the delay between each letter being added.