Javascript Jquery字母洗牌循环

Javascript Jquery字母洗牌循环,javascript,jquery,html,animation,jquery-animate,Javascript,Jquery,Html,Animation,Jquery Animate,我试着在我的页面上循环这些混乱的句子 我已经试过使用 function loop() { container.shuffleLetters({callback:loop}); } 它只循环html容器中的第一个句子 但我想要的是,它会在最后一句话结束后循环。 请检查这把小提琴,看是否有特定的例子 如果你们有任何线索,请用我的小提琴来修理。 非常感谢您的帮助,谢谢 您需要同步超时 创建一个文本数组 使用setInterval代替setTimeout 调用分离函数(shuffle此处)使

我试着在我的页面上循环这些混乱的句子

我已经试过使用

function loop() {
    container.shuffleLetters({callback:loop});
}
它只循环html容器中的第一个句子

但我想要的是,它会在最后一句话结束后循环。 请检查这把小提琴,看是否有特定的例子

如果你们有任何线索,请用我的小提琴来修理。
非常感谢您的帮助,谢谢

您需要同步超时

  • 创建一个文本数组
  • 使用
    setInterval
    代替
    setTimeout
  • 调用分离函数(
    shuffle
    此处)使用数组中的元素更新文本
  • 数组中的所有元素完成后,调用函数(
    last
    )为最后一个默认文本设置动画
  • /**
    *@name洗牌字母
    *@作者马丁·安吉洛夫
    *@version 1.0
    *@urlhttp://tutorialzine.com/2011/09/shuffle-letters-effect-jquery/
    *@license-MIT-license
    */
    (函数($){
    $.fn.shuffletters=函数(prop){
    变量选项=$.extend({
    “步骤”:8,//字母应该更改多少次
    “fps”:25,//帧/秒
    “文本”:“”//使用此文本而不是内容
    “回调”:函数(){}//动画完成后运行
    },道具)
    返回此值。每个(函数(){
    var el=$(此),
    str=“”;
    //使用标志防止并行动画;
    如果(标高数据(‘动画’){
    返回true;
    }
    el.数据(“动画”,真实);
    if(options.text){
    str=options.text.split(“”);
    }否则{
    str=el.text().split(“”);
    }
    //类型数组保存每个字符的类型;
    //字母保持非空格字符的位置;
    变量类型=[],
    字母=[];
    //在字符串的所有字符中循环
    对于(变量i=0;i镜头){
    //动画已完成。正在更新
    //标记并触发回调;
    el.数据(“动画”,假);
    选项。回调(el);
    返回;
    }
    //所有的工作都在这里完成
    对于(i=Math.max(开始,0);i
    
    
    加载文本
    检查。清理代码小位谢谢!这一个很好用。但是在最后一个完成后如何将其重置为第一句?此代码比我的代码更干净,但我需要在最后一个完成后将其设置回开头。你有什么线索吗?谢谢,这是我一直在寻找的!也许你可以编辑这是你的答案,所以我可以检查一下