jQuery 顺序显示文本的插件
jQuery plugin to show text sequentially
我正在尝试创建一个插件,使用 FadeIn、FadeOut 在屏幕上依次显示元素。
脚本同时显示我的元素,但我确实调用了,然后,在下一个 fadeOut 之后,回调。我不知道那里发生了什么。
foreach elements in elements it fadesIn, wait, fadesOut 然后传递给下一个。
有什么帮助吗?任何已经存在的插件可以做这样的事情?
已编辑:抱歉我忘了粘贴 link:
(function ($) {
let sentences;
let index;
$.fn.talk = function () {
sentences = this.find(".sentence");
index = -1;
showNextSentence(sentences, index);
};
function showNextSentence() {
++index;
if (index < sentences.length) {
sentences.eq(index % sentences.length)
.fadeIn(2000)
.delay(2000)
.fadeOut(2000, showNextSentence());
}
return null;
}
}(jQuery));
$('.talk').talk();
改变
fadeOut(2000, showNextSentence())
至
fadeOut(2000, showNextSentence)
第一个版本将立即被调用,而不是在事件完成后
我正在尝试创建一个插件,使用 FadeIn、FadeOut 在屏幕上依次显示元素。
脚本同时显示我的元素,但我确实调用了,然后,在下一个 fadeOut 之后,回调。我不知道那里发生了什么。
foreach elements in elements it fadesIn, wait, fadesOut 然后传递给下一个。
有什么帮助吗?任何已经存在的插件可以做这样的事情?
已编辑:抱歉我忘了粘贴 link:
(function ($) {
let sentences;
let index;
$.fn.talk = function () {
sentences = this.find(".sentence");
index = -1;
showNextSentence(sentences, index);
};
function showNextSentence() {
++index;
if (index < sentences.length) {
sentences.eq(index % sentences.length)
.fadeIn(2000)
.delay(2000)
.fadeOut(2000, showNextSentence());
}
return null;
}
}(jQuery));
$('.talk').talk();
改变
fadeOut(2000, showNextSentence())
至
fadeOut(2000, showNextSentence)
第一个版本将立即被调用,而不是在事件完成后