moonbrv
4/25/2018 - 9:23 PM

Тестовое задания для Junior FE developer

Тестовое задания для Junior FE developer

Тестовое задаие на позицию Junior FE разработчик

Описание визуальной части

Создать страницу с текстовыми блоками. Всего 30 текстовых блоков. У каждого блока есть заголовок в виде баннера и основной текст. Снизу/сбоку на странице есть две кнопки Enable и Disable, кнопки всегда должны быть видны, даже при скроле.

Описание требований к логике работы

Необходимо создать функцию или класс которые будут примать первым аргументом css селектор или коллекцию DOM елементов, остальные аргументы по желанию. Функция/Класс создают обьект с методами initialize и disable. Метод initialize при вызове включает прилипание заголовков текстовых блоков к верху экрана. Метод disable должен выключить прилипание. При нажатии на кнопку Enable должна срабатывать функция initialize, при нажатии на Disable должна срабатывать функция disable.

Условия выполнения задания

  • Vanilla JS (no jQuery/react/etc.)
  • подумайте о проверке на ошибки при работе/вызове функций
  • нельзя использовать position: sticky
  • подуймайте об оптимизации производительности для вычислений на событии scroll
  • текст и разметка не должны прыгать при смене размера окна браузера или повороте мобильного устройства
  • можно писать на ES6 и не компилить в ES5, проверяться будет в последней версии хрома
  • предоставить ссылку на репозиторий с кодом
  • захостить свой пример на github pages или surge.sh или zeit.now
  • код должен быть читаемым, понятным, сделовать best practices

Конечно на практике такое задание не будет встречатся. Цель заания продемонстрировать нам свое умение писать понятный и надежный код.

Выглядеть это должно приблизительно так...