PDA

View Full Version : رفرش يك قسمت صفحه بعد از هر 30 ثانيه



bps20590
جمعه 21 فروردین 1388, 19:42 عصر
با سلام
من در داخل صفحه وب سايتم يك قسمت دارم كه اطلاعات آن با استفاده آژاكس تعويض ميشه حالا من ميخواهم اين تابع اجراي آژاكس هر 30 ثانيه بصورت اتوماتيك اجرا شود چكار بايد بكنم واين كد را كجا قرار دهم

امیـرحسین
جمعه 21 فروردین 1388, 22:00 عصر
سلام
از تابع setTimeout (http://www.w3schools.com/htmldom/met_win_settimeout.asp) در جاوااسکریپت باید استفاده کنید:

setTimeout("yourAjaxFunction('param1','param2')....." , 30000);
پارامتر اول کدی هست که باید اجرا شه (بصورت string) و دومی زمان برحسب میلی ثانیه.

bps20590
شنبه 22 فروردین 1388, 08:10 صبح
دوست عزیز این تابع رو می دونم مشکل من اینجاست که اون رو کجا قرار بدهم که هر 30 ثانیه اجرا شود

payamsp
شنبه 22 فروردین 1388, 09:46 صبح
تابع setTimeout فقط یکبار تابع را بعد از زمان تعیین شده فراخوانی می کند و برای اینکه فراخوانی به صورت پی در پی انجام شود باید از این تابع در داخل تابع خودتون استفاده کنید و یکبار تابع خودتون رو فراخوانی کنید تا هربار بعد از زمان تعیین شده تابع شما اجرا شود.
راه دیگه استفاده از تابع setInterval هست که دیگه نیازی به انجام کارهای بالا نیست و این تابع خودش بعد از زمان تعیین شده هر بار اجرا می شود.


setInterval("your function", 30000 )

mostafa_shaeri_tj
پنج شنبه 19 فروردین 1389, 14:33 عصر
سلام من با تابع setInterval مشکل دارم . یعنی تابعی که میدم فقط یک بار اجرا میشه یعنی تکرار نمیشه.

تا حالا به این مشکل بر خوردید؟


Interval = window.setInterval(myfunc(), 4000);

امیـرحسین
پنج شنبه 19 فروردین 1389, 17:03 عصر
Interval = window.setInterval(myfunc, 4000);