Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Замента текста с таймингом (https://javascript.ru/forum/misc/61751-zamenta-teksta-s-tajjmingom.html)

NicBinc 06.03.2016 16:41

Замента текста с таймингом
 
Необходимо было на сайте реализовать эффект печатающегося текста, осуществил это через готовый jquery плагин. Задача заключается в следующем. Нужно что бы одно из напечатанных слов менялось на другое спустя 3-4 секунды. Буду благодарен, за любую помощь! У меня возникли сложности с setTimeout, он почему-то не срабатывает именно в этом примере. Хотя в других местах отлично работает.

рони 06.03.2016 16:59

NicBinc,
а где пример в котором не работает?

рони 06.03.2016 17:27

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

NicBinc 06.03.2016 18:55

Рони, спасибо огромное, вы сделали больше, чем нужно!

рони 06.03.2016 19:17

печатная машинка с независимыми скоростью и паузами между фразами и словами
 
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>

NicBinc 06.03.2016 19:34

возможно ли, что бы печать напечатав одно из слов, возвращалась к началу этого слова и перепечатывала на нужное?

рони 06.03.2016 19:47

NicBinc,
не осилил

NicBinc 06.03.2016 20:06

И на том спасибо, очень помогли!

рони 06.03.2016 20:10

NicBinc,
Цитата:

Сообщение от NicBinc
перепечатывала на нужное?

а нужное это что?

NicBinc 06.03.2016 20:30

Допустим, есть фраза:
Ехали,ехали, очень долго ехали.
После того, как слово "долго" было напечатано, нужно, что бы печатный станок возвращался к началу слова "долго" и вместо него печатал слово "быстро" . Это вообще реально сделать?))


Часовой пояс GMT +3, время: 16:02.