Кристина, "в скрипте указано появление этого блока через несколько секунд" - у вас в консоль летят ошибки из текста которых будет понятно почему не показывается ваш огонь. Если вы собираетесь называть себя веб-разработчиком, то нельзя игнорировать ошибки о которых вам сообщает главное отладочное ПО на клиенте.
Ну, JS не умеет складывать большие числа, так что либо вы сами пишете что-нибудь, либо используете чужие наработки.
ЗЫ: если под вопросом "как" вы интересовались как это реализовать конкретно, то есть несколько вариантов, все их можно подглядеть в соответствующих библиотеках, ничего сложного там вроде бы нет.
Zombie42679, у вас перед глазами готовая реализация - пример который вы показали, а под рукой у вас DevTools. Нажимаете F12 и смотрите как у них там все устроено.
JackShcherbakov, ну тогда все просто: либо вы каждому экземпляру объекта добавляете метод уже привязанный к нему, либо в defer передаёте объект привязки, либо... а, всё, больше вариантов нет.
А, хотя нет, есть еще вариант, но он не связан с реализацией defer - просто используйте процедурный подход:
"Как сделать, чтобы при несоответствии полей инпуты подсвечилвались так же, как например, пустые поля с required, чтоб не отличить было?" - посмотреть как по дефолту стилизованы эти поля и скопировать стили.
"И как выводить в таком же стиле сообщение, что пароли не совпадают?" - в каком стиле?
bushmaks, тогда вероятно речь о полноценном расширении, это вам придётся штудировать мануалы по их созданию. Если не хочется, то можно использовать яндекс метрику или гугл аналитику, каждый из них предоставляет средства отслеживания действий пользователя.
Код вы привели верный, вы делегируете обработчик для element документу, только комментарий не в тему: суть делегирования не в отслеживании, обработчик не в курсе даже существуют ли эти элементы, он просто проверяет соответствуют ли они селектору или находятся ли в коллекции.