我试图制作一个javascript / jquery代码,在其中自动键入一个字符串,然后在完全键入该字符串之后,清除先前键入的字符串并再次键入它。目前,我所有的代码只需键入一次字符串即可。我知道如何保持循环,但是它只是从中断处开始输入,并且不会清除字符串。 Javascript:

var txt='Typing text...'.split('');

var delay=850;

for ( i=0; i<txt.length;i++){
setTimeout(function(){
    $('.autoText').append(txt.shift() )
}, delay * i)
}


这是我的html:

<h1 class="autoText" style="font-size: 50px; color: #7CFC00; margin-top: 0em; margin-left: 25%;"></h1>

最佳答案

这是你想要的吗?

DEMO

var txt = 'Typing text...'.split('');

var delay = 850;

function type() {
    for (i = 0; i < txt.length; i++) {
        setTimeout(function () {
            $('.autoText').append(txt.shift());
        }, delay * i);
    }

    // delay * i + 1000 means 1 second after the above text was finished typing

    setTimeout(function(){
        // after finish, clear text in h1 element
        $('.autoText').text('');

        // fire `type` method again, with `txt` reset to its original value
        type(txt = 'Typing text...'.split(''));

    }, delay * i + 1000);
}

type(); // call type at least once

关于javascript - 如何自动重复输入文字,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/25584144/

10-11 22:49
查看更多