مетод Window setTimeout()
- صفحه قبلی setInterval()
- صفحه بعدی status
- برگشت به بالا موضوع Window
تعریف و استفاده
setTimeout()
توابع پس از چند میلیثانیه فراخوانی میشوند.
نکته:1 ثانیه = 1000 میلیثانیه.
توضیحات
setTimeout()
فقط یک بار اجرا شود.
اگر نیاز به تکرار دارید، به جای آن از setInterval()
.
لطفاً استفاده کنید روش clearTimeout() برای جلوگیری از شروع تابع استفاده کنید.
برای حذف تاخیر، از setTimeout()
شناسه بازگشتی:
myTimeout = setTimeout(function, milliseconds);
سپس میتوانید با فراخوانی روش clearTimeout() برای توقف اجرا استفاده کنید:
clearTimeout(myTimeout);
لطفاً به: مراجعه کنید
مثال
مثال 1
گوشزدی 5 ثانیهای برای صبر کردن:
const myTimeout = setTimeout(myGreeting, 5000);
مثال 2
برای جلوگیری از اجرای myGreeting از طریق clearTimeout(myTimeout) استفاده کنید:
const myTimeout = setTimeout(myGreeting, 5000); function myStopFunction() { clearTimeout(myTimeout); }
مثالهای بیشتری در پایین صفحه موجود است.
قوانین دستور زبان
setTimeout(function, milliseconds, param1, param2, ...)
پارامترها
پارامترها | توضیحات |
---|---|
function | ضروری. توابعی که باید اجرا شوند. |
milliseconds |
اختیاری. تعداد میلیثانیههایی که قبل از اجرا منتظر میماند. مقدار پیشفرض 0 است. |
param1, param2,... |
اختیاری. پارامترهایی که به تابع ارسال میشوند. IE9 و نسخههای قبلی آن پشتیبانی نمیکنند. |
مقدار بازگشتی
نوع | توضیحات |
---|---|
عدد. |
شناسه زمانسنج. لطفاً این id را با clearTimeout(idروش با هم استفاده کنید تا یک زمانسنج را کنار بگذارید. |
پشتیبانی مرورگر
همه مرورگرها از آن حمایت میکنند setTimeout()
:
Chrome | IE | Edge | Firefox | Safari | Opera |
---|---|---|---|---|---|
Chrome | IE | Edge | Firefox | Safari | Opera |
پشتیبانی | پشتیبانی | پشتیبانی | پشتیبانی | پشتیبانی | پشتیبانی |
مثالهای بیشتر
مثال 3
پس از 3 ثانیه (3000 میلیثانیه) یک جعبه هشدار نمایش داده میشود:
let timeout; function myFunction() { timeout = setTimeout(alertFunc, 3000); } function alertFunc() { alert("Hello!"); }
مثال 4
متن زمانی را نمایش دهید:
let x = document.getElementById("txt"); setTimeout(function(){ x.value = "2 seconds" }, 2000); setTimeout(function(){ x.value = "4 seconds" }, 4000); setTimeout(function(){ x.value = "6 seconds" }, 6000);
مثال 5
یک پنجره جدید باز کنید و پس از سه ثانیه (3000 میلیثانیه) آن را ببند:
const myWindow = window.open("", "", "width=200, height=100"); setTimeout(function() {myWindow.close()}, 3000);
مثال 6
شمارش ادامه دارد - اما میتوان شمارش را متوقف کرد:
function startCount() function stopCount()
مثال 7
ساعتشمار با استفاده از رویدادهای زمانی ایجاد شده:
function startTime() { const date = new Date(); document.getElementById("txt").innerHTML = date.toLocaleTimeString(); setTimeout(function() {startTime()}, 1000); }
مثال 8
پارامترها را به تابع ارسال کنید (در نسخههای IE9 و قدیمیتر عمل نمیکند):
setTimeout(myFunc, 2000, "param1", "param2");
مثال 9
اما اگر از تابع ناشناس استفاده کنید، برای همه مرورگرها اعمال میشود:
setTimeout(function() {myFunc("param1", "param2")}, 2000);
- صفحه قبلی setInterval()
- صفحه بعدی status
- برگشت به بالا موضوع Window