از اونجایی که داریم از مرورگر برای اجرای کدهای جاوااسکریپتمون استفاده میکنیم بیاین تا با چند تا از دستوراتی که میتونیم با کاربر تعامل داشته باشیم اشنا بشیم
این تابع رو توی آموزش های قبلی دیدیم این یک پیغام نشون میده و منتظر کاربر میمونه تا «OK» رو فشار بده
برای مثال:
alert("Hello");
این پنجرهی کوچیک همراه با پیغام یک modal window هست کلمه «modal» به معنی اینه که بازدیدکننده نمیتونه با بقیهی صفحه تعامل کنه، دکمههای دیگه رو بزنه و یا غیره، تا زمانی که با پنجره بازشده کارش تموم شده باشه. تو این مورد خاص -- تا زمانی که دکمهی «OK» رو بزنه
تابع prompt دو پارامتر داره:
result = prompt(title, default);
این یه modal window با یه متن نشون میده، که یه فیلد ورودی هم داخلش هست که کاربر میتونه توش یه متنی وارد کنه و دو تا دکمه OK و Cancel داره
title : پیغامی که به کاربر نشون داده میشه
default: پارامتری اختیاری که مقدار اولیه برای فیلد ورودی رو تنظیم میکنه
کاربر میتونه یه چیزی تایپ کنه توی فیلد ورودی prompt و دکمه OK رو بزنه بعدش ما به متنی که وارد کرده از طریق متغیر result میتونیم دسترسی داشته باشیم و اگه Cancel یا دکمه Esc رو بزنه متغیر result مقدارش null میشه
برای نمونه :
let age = prompt('How old are you?', 100); alert(`You are ${age} years old!`); // You are 100 years old!
پارامتر دوم که اختیاری هست (همون مقدار اولیه) رو اگه وارد نکنین توی مرورگر اینترنت اکسپلورر توی فیلد ورودی "undefined" مینویسه
این کد رو توی اینترنت اکسپلورر اجرا کنین:
let test = prompt("Test");
اگه میخواین prompt هاتون درست کار کنن(هنوز کسی هست که از IE استفاده کنه!!) توی IE توصیه میکنیم که همیشه پارامتر دوم رو یه رشته خالی پاس بدین :
let test = prompt("Test", ''); // <-- for IE
شکل نوشتنش اینجوریه:
result = confirm(question);
تابع confirm یه modal window با یه سوال نشون میده و دو تا دکمه Ok و Cancel هم داره
نتیجهاش هم اگه کاربر Ok بزنه True میشه در غیر این صورت False
برای مثال:
let isBoss = confirm("Are you the boss?"); alert( isBoss ); // true if OK is pressed
توی این قسمت ما ۳ تا از تابع های مخصوص مرورگر که برای تعامل با کاربر هست رو توضیح دادیم:
همه این توابع modal هستن، باعث متوقف شدن اجرای اسکریپت میشن و اجازه نمیدن که کاربر با بقیه قسمت های صفحه کار کنه تا وقتی که کارشون با این پنجره ها تموم بشه
دو تا محدودیت توی توابع بالا وجود داره :
این بهایی هست که برای سادگی پرداخت میکنیم راه های دیگهای برای نمایش پنجرههای تعاملی با کاربر وجود داره ولی اگه زرق و برق براتون مهم نیست این توابع کار رو به خوبی انجام میدن
اگر توی این مقاله مشکلی بود یا خواستین توی این پروژه مشارکت کنین این لینک گیتهابش هست.