۸

پروژه نهایی: اپلیکیشن لیست کارها 📝✅

وقتشه همه چیزایی که یاد گرفتیم رو بریزیم رو دایره و یه چیز به درد بخور بسازیم!

پیش‌نمایش پروژه نهایی

    کد کامل پروژه

    اینم از کد کامل HTML و JavaScript. سعی کن اول خودت بنویسیش و بعد با این مقایسه کنی!

    app.js
    // ۱. گرفتن المنت‌های HTML
    const taskInput = document.getElementById('task-input');
    const addTaskBtn = document.getElementById('add-task-btn');
    const taskList = document.getElementById('task-list');
    
    // ۲. تابع برای اضافه کردن کار
    function addTask() {
      const taskText = taskInput.value.trim();
      if (taskText === "") {
        alert("لطفاً یه چیزی بنویس!");
        return;
      }
    
      // ساختن آیتم لیست
      const li = document.createElement('li');
      li.className = 'task-item flex items-center justify-between bg-muted/50 p-3 rounded-lg';
      li.innerHTML = `
        <span>${taskText}</span>
        <div class="flex gap-2">
            <button class="text-green-500 hover:text-green-700 complete-btn"><i class="fas fa-check"></i></button>
            <button class="text-red-500 hover:text-red-700 delete-btn"><i class="fas fa-trash"></i></button>
        </div>
      `;
      
      taskList.appendChild(li);
    
      // اضافه کردن رویدادها به دکمه‌های جدید
      li.querySelector('.complete-btn').addEventListener('click', () => {
        li.classList.toggle('completed');
      });
      li.querySelector('.delete-btn').addEventListener('click', () => {
        taskList.removeChild(li);
      });
    
      taskInput.value = "";
      taskInput.focus();
    }
    
    // ۳. اضافه کردن رویدادها به دکمه اصلی و اینپوت
    addTaskBtn.addEventListener('click', addTask);
    taskInput.addEventListener('keypress', (event) => {
      if (event.key === 'Enter') {
        addTask();
      }
    });
    

    آفرین! بخش اول تموم شد! 🎉

    شما با موفقیت بخش مقدماتی رو تموم کردین و یه اپلیکیشن واقعی ساختین! حالا برای مفاهیم پیشرفته‌تر آماده‌ای؟