متد setTimeout
مثال (متد setTimeout)
نمایش دادن یک جعبه Alert بعد از هر 3 ثانیه(3000 میلی ثانیه):
خودتان امتحان کنید »
در انتهای این صفحه، مثال های بیشتری آورده شده است.
تعریف و کاربرد
متد setTimeout()، یک تابع را فراخوانی کرده یا یک عبارت را بعد از یک تعداد مشخص میلی ثانیه ارزیابی می کند.
نکته: 1 ثانیه برابر با 1000 میلی ثانیه است.
نکته: تابع مورد نظر تنها یک بار اجرا می شود. در صورتی که نیاز دارید اجرا شدن تابع تکرار شود، از متد setInterval() استفاده کنید.
نکته: می توانید از متد clearTimeout() برای اجتناب از اجرا شدن تابع استفاده کنید.
پشتیبانی مرورگرها
اعداد داخل جدول زیر نشان دهنده ی اولین ورژن مرورگری است که به طور کامل از این متد پشتیبانی می کند.
متد | |||||
---|---|---|---|---|---|
setTimeout() | 1.0 | 4.0 | 1.0 | 1.0 | 4.0 |
نحوه استفاده
مقادیر پارامترها
پارامتر | توضیحات |
---|---|
function |
ضروری. تابعی که قرار است اجرایی شود. |
milliseconds |
ضروری. تعداد میلی ثانیه هایی که بعد از گذشت آن کدها اجرا می شوند. |
param1,param2,... |
اختیاری. پارامترهای اضافی برای رد کردن به تابع(در IE9 و ورژن های قبلی آن پشتیبانی نمی شود). |
جزئیات تکنیکی
مقدار برگشتی |
یک عدد که مشخص کننده ی ID تایمری است که ایجاد شده است. از این Id می توانید در کنار دستور clearTimeout() برای متوقف کردن تایمر استفاده کنید. |
---|
مثال - خودتان امتحان کنید
مثال (متد setTimeout)
شما همچنین می توانید به یک تابع نام گذاری شده رجوع کنید. نمایش دادن یک جعبه alert بعد از گذشت 3 ثانیه(3000 میلی ثانیه):
function myFunction() {
myVar = setTimeout(alertFunc, 3000);
}
function alertFunc() {
alert("Hello!");
}
خودتان امتحان کنید »
مثال (متد setTimeout)
نمایش دادن یک متن زمان گذاری شده:
setTimeout(function(){ x.value="2 seconds" }, 2000);
setTimeout(function(){ x.value="4 seconds" }, 4000);
setTimeout(function(){ x.value="6 seconds" }, 6000);
خودتان امتحان کنید »
مثال (متد setTimeout)
باز کردن یک پنجره و بستن آن بعد از 3 ثانیه(3000 میلی ثانیه):
myWindow.document.write("<p>This is 'myWindow'</p>");
setTimeout(function(){ myWindow.close() }, 3000);
خودتان امتحان کنید »
مثال (متد setTimeout)
استفاده از clearTimeout() برای اجتناب از اجرا شدن تابع:
function myFunction() {
myVar = setTimeout(function(){ alert("Hello") }, 3000);
}
function myStopFunction() {
clearTimeout(myVar);
}
خودتان امتحان کنید »
مثال (متد setTimeout)
شمارش برای همیشه اما با قابلیت متوقف کردن شمارش:
function stopCount()
خودتان امتحان کنید »
مثال (متد setTimeout)
ایجاد یک ساعت با استفاده از رویداد های زمان:
var today = new Date();
var h = today.getHours();
var m = today.getMinutes();
var s = today.getSeconds();
// add a zero in front of numbers<10
m = checkTime(m);
s = checkTime(s);
document.getElementById("txt").innerHTML = h+ ":" + m + ":" + s;
t = setTimeout(function(){ startTime() }, 500);
}
function checkTime(i) {
if (i<10) {
i = "0" + i;
}
return i;
}
خودتان امتحان کنید »
مثال (متد setTimeout)
رد کردن پارامترها به تابع alertFunc (در IE9 و ورژن های قبلی آن پشتیبانی نمی شود):
function myStartFunction() {
myVar = setTimeout(alertFunc, 2000, "First param", "Second param");
}
خودتان امتحان کنید »
اما در صورتی که شما از یک تابع بی نام استفاده کنید، در تمام مرورگرها کار می کند:
function myStartFunction() {
myVar = setTimeout(function(){ alertFunc("First param", "Second param"); }, 2000);
}
خودتان امتحان کنید »
آموزش های مرتبط
کلیه توابع و خصوصیت های شیء Window در JavaScript: clearTimeout() Method
کلیه توابع و خصوصیت های شیء Window در JavaScript: setInterval() Method
کلیه توابع و خصوصیت های شیء Window در JavaScript: clearInterval() Method
کلیه توابع و خصوصیت های شیء Window در JavaScript
- نوشته شده توسط احسان عباسی
- بازدید: 12081
دیدگاهها
با سلام و عرض ادب
خواستم بدین وسیله از تلاش های بی وقفه و قابل تقدیر همه دوستان گروه بی نظیر بیاموز خصوصا جناب آقای مهندس نصوحی و مدیریت محترم سایت تشکر نمایم.امیدوارم هر روز شاهد شکوفایی و موفقیت شما عزیزان و تعالی و ارتقای دانش همه مهندسین کشور عزیز و نخبه پرور ایران باشیم.
با سپاس فراوان