PDA

View Full Version : حرفه ای: چطور اسلاید شو رو فعال کنم که روی بقیه عناصر سایت تاثیر نداشته باشه؟



idocsidocs
دوشنبه 04 آذر 1392, 01:37 صبح
برای لود شدن اسلاید شو چه ترفندی باید بکار برد که نه تصاویر اسلاید شو دیر لود بشه و نه روی سایر عناصر سایت تاثیر بذاره؟

Javidhb
دوشنبه 04 آذر 1392, 11:05 صبح
چون کدتون رو نذاشتین نمیشه راهنمایی دقیقی کرد....

اما بصورت کلی:
1. اسلایدر رو توی یه div با ارتفاع مشخص بزارید.
2. یا عکسهای اسلایدر رو با لود صفحه لود کنید یا اسکریپت اسلایدر رو بعد از لود تصاویر اجرا کنید! (بستگی داره کد شما چجوری کار میکنه)

idocsidocs
دوشنبه 04 آذر 1392, 18:57 عصر
2. یا عکسهای اسلایدر رو با لود صفحه لود کنید یا اسکریپت اسلایدر رو بعد از لود تصاویر اجرا کنید! (بستگی داره کد شما چجوری کار میکنه)
اول تصاویر رو با ایجکس می گرم و لود می کنم و بعد اسلاید شو رو اجرا می کنم (روش دوم)
اما توی این روش باید اول منتظر لود شده همه عناصر صفحه بود و بعد از اون باز هم باید منتظر لود شده همه تصاویر بود
گاهی این روند تا 10 یا 15 ثانیه هم طول می کشه که زمان زیادی هست

راهی هست که با لود شدن تصویر اول اسلاید شو رو اجرا کرد، و با لود شدن بقیه تصاویر اونها رو به اسلاید شو اضافه کرد؟

Javidhb
دوشنبه 04 آذر 1392, 21:08 عصر
بستگی به ساختار درخواست ajaxتون داره...

میتونید بعد از دریافت اولین عکس اسلایدر رو شروع کنید (اگه عکسها رو تک تک از سرور میگیرید)

اما چون دارید از ajax استفاده میکنید این طول کشیدن طبیعیه...
و چون دارید با DOM کار میکنید (میخاید عکس اضافه کنید) باید صبر کنید بقیه المنتها لود بشن...

من جای شما بودم.. عکسها رو تک تک از سرور میگرفتم و بعد از گرفتن اولین عکس اسلایدر رو شروع میکردم...و به گرفتن بقیه عکسها ادامه میدادم.

//img1=> اولین عکس اسلایدر
img1.onload = runSlider();

صبر کنید حرفه ای ها هم بیان نظرشون رو بگن....

idocsidocs
دوشنبه 04 آذر 1392, 23:53 عصر
من جای شما بودم.. عکسها رو تک تک از سرور میگرفتم و بعد از گرفتن اولین عکس اسلایدر رو شروع میکردم...و به گرفتن بقیه عکسها ادامه میدادم.
این کارو کردم ولی چون یبار تابع اسلاید شرو فراخوانی کردم، موقع فراخوانی دوباره تداخل ایجاد می شه و ترتیب اعمال افکتهای اسلاید شو به هم می خوره.