Feb 3, 2020
White Arrow icon
Back to all Elements

ToDo List

A todo list, created with JavaScript collected through the internet... ;)

This Todo list is a bit more complicated than my usual stuff... It includes ~40 lines of code and combines Variables, 'If' functions and other JavaScript elements.

<script>

$(document).ready(function () {

 $('form').submit(function() {

   return false;

 });

 function addTodoItem() {

   var todoItem = $("#new-todo-item").val();

   $("#list").append("<div class=" + "'list-group-item w-clearfix'" + "><div class=" + "'list-txt'" + "value='" + todoItem + "'>" + todoItem + "</div><div class=" + "'buttons-wrap'" + "><div class=" + "'todo-item-done'" + ">Done</div><div class=" + "'remove'" + ">x</div></div>");

     

   $("#new-todo-item").val("");

 }

 function deleteTodoItem(e, item) {

   e.preventDefault();

   $(item).parent().parent().fadeOut('slow', function() {

     $(item).parent().parent().remove();

   });

 }

 function completeTodoItem() {

   $(this).toggleClass("grey");

   $(this).parent().parent().toggleClass("done");

 }

 $(function() {

   $("#add-todo-item").on('click', function(e) {

     e.preventDefault();

     addTodoItem()

   });

 var input = document.getElementById("new-todo-item");

input.addEventListener("keyup", function(event) {

 if (event.keyCode === 13) {

   event.preventDefault();

   document.getElementById("add-todo-item").click();

 }

});

 

   $("#list").on('click', '.remove', function(e) {

     var item = this;

     deleteTodoItem(e, item)

   })

   $(document).on('click', ".todo-item-done", completeTodoItem)

 });

});

</script>

Copy

Preview:

browser mockup
Share:
Heart icon

The videos Kurzgesagt channel creates are so beautifully animated, that I almost forget that I learn so much while watching them!

Might also interest you:

Scaleable Vanilla JS Nested Tabs

JavaScript
Cloneable
Code

Nested tabs in an accordion template

Read more
Blue arrow iconWhite Arrow icon

Buttons Hover Interactions

Cloneable
Interactions

A small collection of buttons and hover interactions.

Read more
Blue arrow iconWhite Arrow icon

3d Video Slider (swiper.js)

Cloneable
CMS
JavaScript

A 3d slider with video items, plays and pauses on click & slide change.

Read more
Blue arrow iconWhite Arrow icon