NicBinc,
<div></div>
<script>
function typeText(l, d, g, h, m) {
var b, a = d.shift(),
f, e = g,
k = performance.now();
d.push(a);
a = a.split("");
b = document.createTextNode(a.shift());
l.appendChild(b);
requestAnimationFrame(function n(c) {
a.length || (a = d.shift(), d.push(a), a = a.split(""), e = h);
c = (c - k) / e;
1 < c && (c = 1);
1 == c && (e == h && (b.data = ""), k = performance.now(), b.data += f = a.shift(), e = +f != +f ? g : m);
requestAnimationFrame(n)
})
};
var div = document.getElementsByTagName("div")[0];
typeText(div, ["ololo ololo lololo lolo","всяка фигня","Вы прочитали это важное сообщение"], 180, 3000, 600);
</script>