大佬教程收集整理的这篇文章主要介绍了在fadeOut之后,JQuery fadeIn被调用两次,大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
$(".slide_top").click(function () { animacija_init(); }); var kadras; var laikmatis; function animacija_init() { kadras = 1; $(".slide_top").fadeOut(500); animacija_trigger(); } function animacija_trigger() { if(kadras == 1) { $('.slide.one').delay(500).fadeIn("slow"); console.log("1"); } if(kadras == 2) { $('.slide.two').fadeIn("slow"); console.log("2"); } if(kadras == 3) { $('.slide.three').fadeIn("slow"); console.log("3"); } if(kadras == 4) { $('.slide').fadeOut(300,function() { $('.slide.four').delay(100).fadeIn("slow"); console.log("4"); }); } if(kadras == 5) { $('.slide.five').fadeIn("slow"); console.log("5"); } if(kadras == 6) { $('.slide.six').fadeIn("slow"); console.log("6"); } if(kadras == 7) { $('.slide').fadeOut(300,function() { $('#last_slide').delay(300).fadeIn("slow"); console.log("7"); }); } kadras++; laikmatis = setTimeout('animacija_trigger()',2500); if(kadras == 8) { baigti_animacija(); } } function baigti_animacija() { clearTimeout(laikmatis); }
有什么建议吗?这里的实例:www.iamrokas.com/demo_Boxi
Console.log用于检查事件何时开始
谢谢!
1)使用promise()方法只执行一次完整的函数.
查看我为您创建的JSFIDDLE.
您将看到每个数字仅在控制台中打印一次而不是8次.
2)我添加了一个全局变量长度来动态地改变下一个动画之前应该经过的时间.
3)注意执行顺序不是人们所期望的顺序.想想同时执行的所有事情.重要的是要注意长度确实在setTimeout函数之前分配.
以上是大佬教程为你收集整理的在fadeOut之后,JQuery fadeIn被调用两次全部内容,希望文章能够帮你解决在fadeOut之后,JQuery fadeIn被调用两次所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。