توجه ! این یک نسخه آرشیو شده میباشد و در این حالت شما عکسی را مشاهده نمیکنید برای مشاهده کامل متن و عکسها بر روی لینک مقابل کلیک کنید : ایجاد تاخیر در حلقه each در JQuery
naghmesra
June 8th, 2017, 16:21
سلام و درود
یه حلقه each دارم به شکل زیر:
jQuery.each(result, function (key, value) { jQuery("#my").prepend('<li><a href="#">' + value + '</a></li>').children(":first").hide().fadeIn(200);});
من میخوام هر li ایی که prepend میشه یه تاخیری بندازه بعد li بعدی رو prepend کنه نه اینکه هر وقت دو li وجود داشت هر دو رو همزمان prepend کنه.
چطور میشه این کار رو انجام داد؟
تشکر
mojtaba05
June 8th, 2017, 23:48
سلام، درست متوجه منظورتون نشدم ولی چرا از setTimeout یا delay استفاده نمی کنید؟ اگه کارتون رو به صورت دمو شبیه سازی کنید بهتر میشه کمک کرد.
naghmesra
June 9th, 2017, 02:37
درود بر شما
سلام، درست متوجه منظورتون نشدم ولی چرا از setTimeout یا delay استفاده نمی کنید؟ اگه کارتون رو به صورت دمو شبیه سازی کنید بهتر میشه کمک کرد
.
مقصود از سوال این بود که چطور میشه کاری کرد که هر دور که حلقه each اجرا میشه بعد از اجرا یه مکث کنه سپس بره دور بعدی.
این کار رو در php توابع sleep و usleep انجام می دهند.
تشکر
safaeean
June 9th, 2017, 04:38
درود بر شما
مقصود از سوال این بود که چطور میشه کاری کرد که هر دور که حلقه each اجرا میشه بعد از اجرا یه مکث کنه سپس بره دور بعدی.
این کار رو در php توابع sleep و usleep انجام می دهند.
تشکر
در جاوا اسکریپت از setTimeOut استفاده میشه.
naghmesra
June 9th, 2017, 11:25
درود
در جاوا اسکریپت از setTimeOut استفاده میشه.
https://jsfiddle.net/5eofcov1/
وقتی در حلقه each از setTimeout استفاده میکنم به جای اینکه هر عنصر از آبجکت به طور مجزا 1000 میلی ثانیه تاخیر بگیره و سپس prepend شه همه عناصر با هم prepend میشن و به طور کلی 1000 میلی ثانیه تاخیر میگیرن.
تشکر
mojtaba05
June 9th, 2017, 11:53
با استفاده از delay و queue دموتون رو آپدیت کردم. همین منظورتون بود؟
https://jsfiddle.net/5eofcov1/1/
naghmesra
June 9th, 2017, 13:06
درود
با استفاده از delay و queue دموتون رو آپدیت کردم. همین منظورتون بود؟
https://jsfiddle.net/5eofcov1/1/
بله منظور تقریبا همین بود فقط ظاهر شدن li ها میخوام به شکل fade باشه. امکانش هست؟
و یه مورد دیگه هم هست. این حلقه for ای که شما نوشتی اگر مقدار ها متفاوت باشه فقط مقدار آخر رو برمیگردونه.
https://jsfiddle.net/5eofcov1/2/
تشکر
naghmesra
June 9th, 2017, 23:05
درود مجدد
مشکل حل شد.
مشکل این بود که مقدار i فقط در داخل بدنه حلقه for افزایش پیدا میکنه و اگر توی for مثلا یه فانکشن دیگه بذاری i اختلال پیدا میکنه.