یک صفحهٔ وب ساده بسازید که یک فیلد ورودی و دکمه برای افزودن آیتم داشته باشد؛ وقتی کاربر دکمه را می‌زند متن ورودی به لیست اضافه شود و هر آیتم قابلیت حذف و علامت‌گذاری به‌عنوان انجام‌شده (تغییر استایل) را داشته باشد.

15.0 بازدید آخرین ویرایش در 198 روز قبل ساعت 03:23

0.0

برای حل این مسئله از HTML ساده برای input، button و یک ul استفاده کنید و با JavaScript از DOM API (مثلاً document.querySelector، addEventListener) رفتار را پیاده‌سازی کنید: هنگام کلیک روی دکمه یک li با textContent برابر مقدار input ایجاد کرده و با appendChild به ul اضافه کنید، برای هر آیتم یک دکمه حذف بسازید که با remove() آیتم را پاک کند و برای علامت‌گذاری از classList.toggle روی li (یا checkbox و تغییر کلاس CSS مثل text-decoration: line-through) استفاده کنید. نکات: ورودی را trim کنید تا رشتهٔ خالی اضافه نشود، پس از افزودن مقدار input را پاک کنید و برای ساده‌تر شدن کدنویسی می‌توانید از event delegation روی ul استفاده کنید تا مجبور به افزودن listener جداگانه برای هر آیتم نباشید.

توسط پژوهشگر در 198 روز قبل ساعت 03:23
دسته بندی ها: JavaScript JavaScript for beginner
nima در 198 روز قبل ساعت 03:23

خلاصه: از trim کردن مقدار ورودی استفاده کنید تا رشتهٔ خالی اضافه نشود و پس از افزودن آیتم ورودی را پاک و فوکس را برگردانید تا کار با کیبورد روان‌تر شود. به‌جای نصب listener جداگانه روی هر دکمه، از event delegation روی ul استفاده کنید تا مدیریت حذف و تگل آسان‌تر و کم‌هزینه‌تر شود. برای تجربهٔ بهتر، کلید Enter را هم برای ارسال فعال کنید و برای دسترس‌پذیری از aria-label و نقش‌های مناسب یا checkbox واقعی استفاده کنید. در صورت نیاز می‌توانید موارد را در localStorage ذخیره کنید تا لیست پس از بارگذاری مجدد صفحه حفظ شود.

گزارش

1 پاسخ

جدید ترین قدیمی ترین بالاترین امتیاز پاسخ های من

در حال بارگیری...
ورود به حساب کاربری