Cara Membuat: Daftar Tugas Yang Harus Dilakukan
- Halaman sebelumnya HTML termasuk
- Halaman berikutnya Pemuat
Belajar cara menggunakan CSS dan JavaScript untuk membuat 'Daftar Tugas Yang Harus Dilakukan'.
Daftar tugas
Buat "daftar tugas" menggunakan CSS dan JavaScript untuk mengatur tugas dan menentukan prioritasnya.
Buat daftar tugas
Langkah pertama - Tambahkan HTML:
<div id="myDIV" class="header"> <h2>My To Do List</h2> <input type="text" id="myInput" placeholder="Title..."> <span onclick="newElement()" class="addBtn">Add</span> </div> <ul id="myUL"> <li>Hit the gym</li> <li class="checked">Pay bills</li> <li>Meet George</li> <li>Buy eggs</li> <li>Read a book</li> <li>Organize office</li> </ul>
Langkah kedua - Tambahkan CSS:
Atur gaya judul dan daftar:
/* Sertakan padding dan border dalam lebar dan tinggi total elemen */ * { box-sizing: border-box; } /* Buang margin dan padding di dalam daftar */ ul { margin: 0; padding: 0; } /* Atur gaya item daftar */ ul li { kursor: pointer; position: relative; padding: 12px 8px 12px 40px; background: #eee; font-size: 18px; transition: 0.2s; /* Jaga item daftar tidak dapat dipilih */ -webkit-user-select: none; -moz-user-select: none; -ms-user-select: none; user-select: none; } /* Atur semua item daftar ganjil dengan warna yang berbeda (garis zebra) */ ul li:nth-child(odd) { background: #f9f9f9; } /* Saat penarik mouse diatas, warna latar menjadi gelap */ ul li:hover { background: #ddd; } /* Saat diklik, tambahkan warna latar dan garis teks dihapus */ ul li.checked { background: #888; warna: #fff; dekorasi_teks: garis_miring; } /* Tambahkan tanda "terpilih" saat diklik */ ul li.checked::before { konten: ''; posisi: absolut; warna_garis_borders: #fff; gayanya_garis_borders: solid; tinggi_garis_borders: 0 2px 2px 0; atas: 10px; kiri: 16px; transform: putar(45deg); tinggi: 15px; lebar: 7px; } /* Atur gaya tombol tutup */ .close { posisi: absolut; kanan: 0; atas: 0; padding: 12px 16px 12px 16px; } .close:hover { warna_latar: #f44336; warna: putih; } /* Atur gaya judul */ .header { warna_latar: #f44336; padding: 30px 40px; warna: putih; text-align: center; } /* Buang gelombang setelah judul */ .header:after { konten: ""; display: table; clear: both; } /* Atur gaya bidang masukan */ input { margin: 0; garis_borders: none; radius_borders: 0; lebar: 75%; padding: 10px; float: left; ukuran_font: 16px; } /* Atur gaya tombol "tambah" */ .addBtn { padding: 10px; lebar: 25%; latar: #d9d9d9; warna: #555; float: left; text-align: center; ukuran_font: 16px; kursor: pointer; transisi: 0.3s; radius_borders: 0; } .addBtn:hover { warna_latar: #bbb; }
Tahap ketiga - Tambahkan JavaScript:
// Membuat tombol "tutup" untuk setiap item daftar dan menambahkannya ke setiap item daftar var myNodelist = document.getElementsByTagName("LI"); var i; untuk (i = 0; i < panjang_myNodelist; i++) { var span = document.createElement("SPAN"); var txt = document.createTextNode("\u00D7"); span.className = "close"; span.appendChild(txt); myNodelist[i].appendChild(span); } // Saat menekan tombol tutup akan menyembunyikan item daftar saat ini var close = document.getElementsByClassName("close"); var i; for (i = 0; i < close.length; i++) { close[i].onclick = function() { var div = this.parentElement; div.style.display = "none"; } } // Saat menekan item daftar akan menambahkan tanda "terpilih" var list = document.querySelector('ul'); list.addEventListener('click', function(ev) { if (ev.target.tagName === 'LI') { ev.target.classList.toggle('checked'); } }, false); // Saat menekan tombol "Tambah" akan membuat item daftar baru function newElement() { var li = document.createElement("li"); var inputValue = document.getElementById("myInput").value; var t = document.createTextNode(inputValue); li.appendChild(t); if (inputValue === '') { alert("You must write something!"); } else { document.getElementById("myUL").appendChild(li); } document.getElementById("myInput").value = ""; var span = document.createElement("SPAN"); var txt = document.createTextNode("\u00D7"); span.className = "close"; span.appendChild(txt); li.appendChild(span); for (i = 0; i < close.length; i++) { close[i].onclick = function() { var div = this.parentElement; div.style.display = "none"; } } }
- Halaman sebelumnya HTML termasuk
- Halaman berikutnya Pemuat