Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

2 Homework (DOM) #55

Open
DrSmile444 opened this issue Oct 27, 2020 · 0 comments
Open

2 Homework (DOM) #55

DrSmile444 opened this issue Oct 27, 2020 · 0 comments
Labels

Comments

@DrSmile444
Copy link
Contributor

DrSmile444 commented Oct 27, 2020

Гілку потрібно назвати: 2-dom

Назва директорії з домашнім завданням повинна бути 2-dom, тобто ця папка повинна знаходитись всередині вашої папки з домашніми роботами

Потрібно створити простий чат, в який можна писати повідомлення, сабмітити ввід та показувати це повідомлення на сторінці.
Дизайн та розположення елементів потрібно взяти за референс від вже готових рішень в інтернеті.

Від вас потрібно:

  1. Створити текстовий інпут, в який буде вводитись повідомлення;
  2. Створити кнопку "Submit", яка при натисканні буде:
    2.1) Валідувати значення текстовий інпуту (не пусте повідомлення, без лишніх пробілів до та після повідомлення);
    2.2) Викликати функцію, яка буде створювати елемент, який буде відображатись як повідомлення в чаті;
    2.3) Очистити значення текстового інпуту;
    2.4) Обернути JS код в анонімну функцію;
  3. Створити щонайменше 3 повідомлення та перевірити чи вірно у вас відображаються всі елементи.
  4. Ввімкнути Github Pages у вашому репозиторії та додати посилання в опис до пулл реквесту.
  5. Створюючи пулл реквест, потрібно прикласти скріншот як ваш чат виглядає із повідомленнями та додати посилання в опис до пулл реквесту.

Важливо! Створюючи пулл реквест, потрібно прикласти скріншот як ваш чат виглядає із повідомленнями.

  • Завдання із зірочкою:
    Для покращення навичок, вам потрібно:
  1. Показувати статус "Typing..." коли юзер починає вводити текст і ховати цей статус після секунди неактивності (еффект Debounce);
  2. Додати скролл у блок з повідомленнями, щоб на сторінці можна було показувати будь-яку їх кількість.

Корисні лінки:

Селектори та пошук по DOM:
https://blog.bitsrc.io/dom-selectors-explained-70260049aaf0

Лісенери та івенти:
https://medium.com/@timothyrobards/javascript-fundamentals-understanding-events-4def8c47e313

Делегування івентами:
https://learn.javascript.ru/event-delegation

Ефективний спосіб створення шаблонів:
https://developer.mozilla.org/en-US/docs/Web/HTML/Element/template

Приклади:
https://learn.javascript.ru/event-delegation#povedenie-podskazka
https://learn.javascript.ru/event-delegation#raskryvayuscheesya-derevo

@DrSmile444 DrSmile444 added the JS label Oct 27, 2020
Vadim113615 added a commit to Vadim113615/frontend-course-2020 that referenced this issue Nov 7, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

1 participant