Здравейте, скоро взаимствах една идея от потребител, в едно форумче. Тоест, на момчето му трябваше такава функцийка и аз му я написах, дано да му помогне. Та реших и да я споделя и във блога си, ефекта си е доста ... интересен, сам по себе си, макар и да съм виждал доста по-развити функции за такъв род дейност. Все пак ето я и нея, добавил съм почти на всеки ред коментар, така че ще ги спестя в самата статия :>

Source   
  1. <script type="text/javascript" charset="utf-8">
  2. // Създаваме две глобални променливи, една за таймера, и една за брояча
  3. var t,sec,x = 0;
  4. // Създаваме и самата функция, със звучното име ma3x.
  5. // Като параметри и подаваме стринг, който ще трябва да изпише.
  6. // Вторият параметър е опционален, и е за времето на таймера (дали да е произволен, или статичен)
  7. function ma3x(text,random) {
  8. // Ако тепърва стартираме функцията, трием текущия стринг
  9. if ( x == 0 ) { document.getElementById('ma3x').innerHTML = ''; }
  10. // тук правим една проверка, ако стринга е свършил (тоест, сме го изписали) спираме таймера и нулираме брояча
  11. if ( text.length <= x && t ) { clearTimeout(t); sec = 0; x = 0; return; }
  12. // В противен случай, работим по въпроса
  13. document.getElementById('ma3x').innerHTML += (text.substr(x,1)); x++;
  14. random = !random ? false : true;
  15. sec = ( !random ? 1000 : Math.ceil(2000*Math.random()) );
  16. console.log(sec);
  17. // Тук правим една малка проверка, дали следващия символ е празен стринг.Ако е празен стринг, просто го показваме, без да губим време, за да не губим ефекта
  18. if ( text.substr(x,1) != ' ' ) { t = setTimeout('ma3x(\'' + text + '\',' + random + ')',sec); }
  19. else { ma3x(text,random); }
  20. }
  21. </script>

Та остава да си направите едно див-че, с id="ma3x" и да активирате по някакъв начин функцийката.

Source   
  1. <a href="javascript: ma3x('проба',true);">Произволен таймер</a> <br />
  2. <a href="javascript: ma3x('проба');">Статичен таймер (1 секунда)</a> <br />
  3. <div id="ma3x"></div>

Демо, както и целия код - може да видите тук