gpt4 book ai didi

jquery - 防止循环

转载 作者:太空宇宙 更新时间:2023-11-04 09:18:32 24 4
gpt4 key购买 nike

抱歉,这对你们所有人来说可能都不简单,但在尝试了几件事之后,我离我想要的还很远。

我只是想在第一次运行后停止这个动画: CSS typewriter

var TxtType = function(el, toRotate, period) {
this.toRotate = toRotate;
this.el = el;
this.loopNum = 0;
this.period = parseInt(period, 10) || 2000;
this.txt = '';
this.tick();
this.isDeleting = false;
};

TxtType.prototype.tick = function() {
var i = this.loopNum % this.toRotate.length;
var fullTxt = this.toRotate[i];

if (this.isDeleting) {
this.txt = fullTxt.substring(0, this.txt.length - 1);
} else {
this.txt = fullTxt.substring(0, this.txt.length + 1);
}

this.el.innerHTML = '<span class="wrap">'+this.txt+'</span>';

var that = this;
var delta = 200 - Math.random() * 100;

if (this.isDeleting) { delta /= 2; }

if (!this.isDeleting && this.txt === fullTxt) {
delta = this.period;
this.isDeleting = true;
} else if (this.isDeleting && this.txt === '') {
this.isDeleting = false;
this.loopNum++;
delta = 500;
}

setTimeout(function() {
that.tick();
}, delta);
};

window.onload = function() {
var elements = document.getElementsByClassName('typewrite');
for (var i=0; i<elements.length; i++) {
var toRotate = elements[i].getAttribute('data-type');
var period = elements[i].getAttribute('data-period');
if (toRotate) {
new TxtType(elements[i], JSON.parse(toRotate), period);
}
}
// INJECT CSS
var css = document.createElement("style");
css.type = "text/css";
css.innerHTML = ".typewrite > .wrap { border-right: 0.08em solid #fff}";
document.body.appendChild(css);
};

感谢您的帮助!

最佳答案

你好(goedemorgen)vloryan,

如果你想在所有的句子/单词都被动画化之后停止动画,那么只需更改

if (typeof dataText[i] == 'undefined'){
setTimeout(function() {
StartTextAnimation(0);
}, 500);
}

if (typeof dataText[i] == 'undefined'){
return false;
}

这样做的目的是,如果计数器到达单词/句子数组的末尾(因为 i 未定义),它将返回 false 并停止。

注意:此代码来自您的 Fiddle。

关于jquery - 防止循环,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41629309/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com