Показать сообщение отдельно
  #15 (permalink)  
Старый 10.07.2022, 15:25
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,108


<!DOCTYPE html>
<html>

<head>
    <title>Untitled</title>
    <meta charset="utf-8">
    <style type="text/css">
        ul {
            list-style: none;
            width: 240px;
        }

        .list__item_done {
            background-image: -webkit-linear-gradient(left, #0000CD, #FF0000);
            background-image: linear-gradient(to right, #0000CD, #FF0000);
            color: #FFFFFF;
        }
    </style>
    <script>
        document.addEventListener("DOMContentLoaded", function() {
            const ul = document.querySelector('.list');
            const lis = Array.from(ul.querySelectorAll('.list__item'));
            ul.addEventListener('click', () => {
                const before = [], after = [];
                for (let li of lis) {
                    if (li.querySelector(":checked")) {
                        li.classList.add("list__item_done");
                        after.push(li)
                    } else {
                        li.classList.remove("list__item_done");
                        before.push(li)
                    }
                };

                ul.append(...before, ...after)
            });
        })
    </script>
</head>

<body>
    <ul class="list">
        <li class="list__item"><input type="checkbox" class="list__item-checkbox">Buy milk</li>
        <li class="list__item"><input type="checkbox" class="list__item-checkbox">Pick up Tom from airport</li>
        <li class="list__item"><input type="checkbox" class="list__item-checkbox">Visit party</li>
    </ul>
</body>

</html>
Ответить с цитированием