Скрипт - печаталка

javascript, 02.02.2009 Понедельник, 04:03
Теги: скрипт, ерунда
Пока был на Кипре, выдалась пара свободных минут и родился простенький но занимательный скрипт - печаталка сообщений. Буквы печатает с рэндомными интервалами времени, распознаёт бб-код переноса строки, можно было конечно научить его распознавать html теги, но времени не хватило, а сейчас лень.. Сама функция представляет из себя готовый обработчик, который запускается, ну например по онклику на кнопку именнованой функцией с парамерами, вот так:
Code
typeit('mydiv','Какое либо предложение без html тегов',300,true)
Вначале указывается id элемента, в который печатается текст, затем указывается сам текст, потом максимальная скорость появления букв, затем указывается булевный параметр - выводить ли мигающий курсор или нет (true / false). Вобщем может вам будет интересно. Вот сам код скрипта:
Code
<script>
function typeit(id,word,time,bl){

var i = 0;
var dest = document.getElementById(id);
type();
if(bl){blink();}
function type(){
var lett = word.charAt(i);
if(lett == '[' && word.charAt(i+1)=='b' && word.charAt(i+2)=='r' && word.charAt(i+3)==']'){lett = '</br>';
i=i+3}
var cont = dest.innerHTML;
var e = '';
if(cont.indexOf('|')>=0){cont = cont.replace(/[|]/,''); e = '|';}
dest.innerHTML = cont + lett + e;
i = ++i;
speed = time + parseInt(time/100*(Math.random()*100));
setTimeout(type,speed);
};
var p = 1;
function blink(){
var e;
var cont = dest.innerHTML;
var cont = cont.replace(/[|]/,'')
if(p == 1){e = '|'; p = 0;}else{e = ''; p = 1;}
dest.innerHTML = cont + e;
setTimeout(blink,200);
};
};
</script>

А вот пример его работы:

Жми на пятую!
21, 1, 3244
№1
[sayto]Scriptin[/sayto], дааа) тоже много чем на парах баловался)
    © Блог StudioAD.ru 2024 год нашей эры. Не все права защищены... Копирование любой информации и материалов с обратной ссылкой приветствуется! Хостинг от uCoz.

    Если вам пришлись по душе материалы моего блога - подпишитесь на RSS дабы получать обновления незамедлительно! Я рад что вы читаете и комментируете мои экзерсисы, приятного времяпрепровождения.