Initializing
Liveweave
Web
expand_more
home
Home
data_object
CSS Explorer
arrow_outward
Palette
Color Explorer
arrow_outward
Polyline
Graphics Editor
arrow_outward
outbox_alt
Generative AI
arrow_outward
frame_source
Python Playground
New
arrow_outward
build
Tools
expand_more
restart_alt
Load "Hello Weaver!"
post_add
Generate Lorem ipsum...
code
Format HTML
code_blocks
Format CSS
data_object
Format JavaScript
library_add
Library
expand_more
A
Algolia JS
Animate CSS
Apex Charts JS
B
Bulma CSS
Bootstrap
C
Chart JS
Chartist
Create JS
D
D3
Dojo
F
Foundation
Fullpage JS
G
Granim JS
Google Charts
H
Halfmoon
J
jQuery
M
Materialize
Moment JS
Masonry JS
Milligram CSS
P
Pure CSS
Primer CSS
Popper JS
Pattern CSS
Picnic CSS
R
React JS
Raphael JS
Raisin CSS
S
Semantic UI
Skeleton CSS
Spectre CSS
Tachyons CSS
T
Tailwind
Three JS
U
UI Kit
Vis JS
W
Water CSS
download
Download
expand_more
developer_mode
Download as HTML
folder_zip
Download as .ZIP
cloud_upload
Save
account_circle
Login
settings
Settings
expand_more
14
px
Live mode
Night mode
Line number
Mini map
Word wrap
sync_alt
Reset Settings
smart_display
Run
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>To do list</title> <script src="//ajax.googleapis.com/ajax/libs/jquery/3.1.0/jquery.min.js"></script> <script src="http://ajax.googleapis.com/ajax/libs/jqueryui/1.12.1/jquery-ui.min.js"></script> </head> <body> <div id="contentBlock"></div> <button id="addTODOLis">Add TODO List</button> </body> </html>
.lw { font-size: 60px; }
//Ñ„ÑƒÐ½ÐºÑ†Ð¸Ñ Ñоздает Ñлементы и их ÑвойÑтва function elmt(name, attributes) { var node = document.createElement(name); if (attributes) { for (var attr in attributes) if (attributes.hasOwnProperty(attr)) node.setAttribute(attr, attributes[attr]); } for (var i = 2; i < arguments.length; i++) { var child = arguments[i]; if (typeof child == "string") child = document.createTextNode(child); node.appendChild(child); } return node; } //Ñ„ÑƒÐ½ÐºÑ†Ð¸Ñ Ð¿ÐµÑ€ÐµÐ¼ÐµÑ‰ÐµÐ½Ð¸Ñ Ñтрок табл function dragDropTable() { var fixHelper = function(e, ui) { ui.children().each(function() { $(this).width($(this).width()); }); return ui; }; $(".box_table tbody").sortable({ helper: fixHelper }).disableSelection(); //отображение иконки $("table tr").hover(function () { $(this.cells[0]).addClass('showDragHandle'); }, function () { $(this.cells[0]).removeClass('showDragHandle'); }); } //Ñ„ÑƒÐ½ÐºÑ†Ð¸Ñ Ñ€ÐµÐ´Ð°ÐºÑ‚Ð¸Ñ€Ð²Ð¾Ð°Ð½Ð¸Ñ Ñтроки табл function editTask() { //получаем доÑтуп к Ñчейке var accessToValue = $(this).closest('tr').find('td.context'); //ПОЛУЧÐЕМ СОДЕРЖИМОЕ ЯЧЕЙКИ var val = accessToValue.html(); var code = '<input type="text" id="edit" value="' + val + '" style="border: none"/>'; //удалÑем Ñодержимое и вÑтавлÑем поле accessToValue.empty().append(code); //уÑтанавливаем Ñ„Ð¾ÐºÑƒÑ Ð½Ð° поле $('#edit').focus(); //прÑчем поле и обновлÑем данные $('#edit').blur(function () { var val = $(this).val(); accessToValue.html(val); }); $(window).keydown(function (event) { if (event.keyCode == 13) { $('#edit').blur(); } }); } //Ñ„ÑƒÐ½ÐºÑ†Ð¸Ñ Ð´Ð¾Ð±Ð°Ð²Ð¸Ñ‚ÑŒ задачу в табл(добавить Ñтроку) function addTask() { var valueOfTask = $(this).siblings('.box_input').val(); var table = $(this).siblings('.box_table'); var tr = elmt("tr"); var td0 = elmt("td",{class: "dragHandle", style:"width: 10px;"}); var td1 = elmt("td"); var td2 = elmt("td",{class: "context"}); var td3 = elmt("td"); var td4 = elmt("td"); var checkbox = elmt("input",{type: "checkbox"}); //delete task var deleteTask = elmt("button",{style: "display: inline-block; cursor: pointer;"},"Delete"); deleteTask.onclick = function (e) { e.target.closest('tr').remove();//this }; //edit task var edit = elmt("button",{style: "display: inline-block; cursor: pointer;"},"Edit"); edit.onclick = editTask; //editTask - функциÑ, определена выше td1 = checkbox; td2.innerHTML = valueOfTask; td3 = edit; td4 = deleteTask; tr.appendChild(td0); tr.appendChild(td1); tr.appendChild(td2); tr.appendChild(td3); tr.appendChild(td4); table.append(tr); dragDropTable(); } document.querySelector("#addTODOLis").addEventListener("click", function () { var contentBlock = document.querySelector("#contentBlock"); var div = elmt("div", {class: "box"}); var table = elmt("table", {class: "box_table"}); var tbody = elmt("tbody"); var input = elmt("input", {class: "box_input", type: "text", style: "width:20%; height:2em"}); var button = elmt("button", {class: "box_btn", style: "width:100px; height:40px"}, "Add task"); contentBlock.appendChild(div).appendChild(input); contentBlock.appendChild(div).appendChild(button); contentBlock.appendChild(div).appendChild(table).appendChild(tbody); $('.box_btn').click(addTask); });