Дальше нам потребуется открыть консоль разработчика.
Вот инструкция как открыть в google chrome эту консоль
Появится примерно такое окно.
Нам нужно выбрать этот инструмент в консоли разработчика
Дальше нам нужно мышкой навести на форму ввода пароля, и кликнуть левой кнопкой мыши, после чего мы увидими html разметку страницы. Выбираем в правом окне наш тег input и меняем его атрибут type="password" на type="text"
После того как вы это сделали, в форме ввода пароля, будет виден пароль
Для тех, кто не в курсе, Visual Studio Code – это бесплатный и кроссплатформенный текстовый редактор, созданный компанией Microsoft. Он достаточно быстро стал «народным любимцем», ввиду его высокой производительности и обильного функционала.
1. Live Server
По умолчанию, Visual Studio Code не предусматривает возможности открывать файл в любом выбранном браузере. Данное расширение не только добавляет функцию Открыть в браузере по умолчанию, но также позволяет открывать файлы в любом имеющемся у вас браузере.
2. Quokka
Quokka – это утилита, дающая вам возможность предварительного просмотра результата выполнения того или иного куска кода. Она выдает вам результаты выполнения функций и посчитанные значения переменных. Расширение легко настроить, и оно запускается из того же ящика, что и JSX или Typescript проекты.
3.Color Info
Небольшой плагин, который даёт вам возможность получать краткую справку об используемых в CSS цветах. Наведя курсор на название цвета, вы можете увидеть, как этот цвет выглядит, а также получить всю информацию о трансляции данного цвета в разные форматы (hex, rgb, hsl и cmyk).
4. CSS Peek
С этим плагином вы можете отслеживать определения CSS классов и id таблиц стилей. Для этого просто достаточно кликнуть правой кнопкой мыши на селектор в вашем HTML файле и воспользоваться функцией Перейти к определению или Подсмотреть определение.
5. HTML Boilerplate
Это расширение упрощает работу с HTML файлами, избавляя вас от необходимости прописывать теги head и body вручную. Просто наберите в пустом файле html, нажмите на Tab, и VS Code сам сгенерирует шаблон вашего документа.
P.s Если тебе IT тематика, и ты хочешь больше контента на тему IT то можешь подписаться на Telegram канал: t.me/AlphaCodeJS
При написании простого веб приложения или прототипировании чего-нибудь, иногда хочется иметь быстрое и простое средство хранения, редактирования и извлечения данных.
Например, ты пишешь простой блог и тебе совсем не хочется строить бэкенд, дабы записывать, редактировать и хранить там посты, но ты хочешь удобно собирать эти данные как JSON — Google Drive поможет тебе с этим.
Ты создал таблицу и потом ты можешь опубликовать этот документ в веб. Для этого выбери «Файл» > «Опубликовать в интернете...». В нижней части диалога ты можешь увидеть ссылку к данным, но он дает нам доступ только к HTML
Теперь в своем веб приложении ты можешь получить данные и использовать их как захочешь.
P.s Если тебе нравится it, и ты полностью хочешь погрузиться в этот мир, то советую свой Telegram канал: t.me/AlphaCodeJS и Instagram: @alpha.code.js можно увидеть обзоры книг по программированию/Юмор/ и много других новостей из мира it.
Ember.js — зрелый фронтенд фреймворк, получивший много внимания в последнее время.
Ember.js вобрал в себя множество современных JavaScript концепций и технологий. Вот их неполный список:
●Транспайлер Babel для полноценной поддержки ES2015 синтаксиса.
●Поддержка юнит, интеграционного и приемочного тестирований с помощью Testem и QUnit.
●Brocolli.js для сборки ассетов.
●Поддержка live-reload для сокращения отклика во время разработки.
●Шаблонизация с использованием Handlebars.
●Навигация в любую часть приложения благодаря
системе роутинга.
Полная поддержка JSON API, но при этом присутствует возможность использовать любой API, который вам необходим.
Для работы с Ember.js предполагается, что у вас установлены свежие версии Node.js и npm.
Также стоит упомянуть, что Ember — исключительно фронтенд фреймворк. Есть множество способов взаимодействия с бэкендом на ваш выбор, но сам бэкенд никак не управляется Ember.
В закючение хочу сказать что Ember способен на многое и позволяет очень быстро создавать веб-приложения различной сложности. Он навязывает свои представления о том как вы должны структурировать ваш код, но в большинстве случаев это не так плохо, как кажется, так как предлагаемая им структура в любом случае необходима.
По-хорошему статья должна уже закончиться, но я позволю добавить пару слов от себя.
surge — веб сервис, который позволяет опубликовать frontend приложение буквально двумя командами. Он будет вам полезен если вам нужно временно опубликовать проект в интернете.
А сейчас я начну «переписывать» документацию.
Установка
npm install --global surge
Запуск
surge
Подготовка к деплою
Итак, у нас есть проект
Переходим в терминал и запускаем surge
surge
Деплой
После регистрации подверждаем путь к проекту, указываем желанный домен и жмем enter.
Готово, вы в интернете!
Целью данной статьи было не научить чему-то, а показать, что такой сервис в принципе существует и как просто с ним работать.
Если он вас заинтересовал и вы хотите поближе с ним познакомиться — у него достаточно хорошая документация.
Давайте разберемся как сделать аккордеон на ванильном JavaScript.
HTML
<dl> <dt class="question js-accordion"> <button class="question__trigger" type="button">First Question? </button> </dt> <dd class="answer"> <div> Lorem ipsum dolor sit amet consectetur adipisicing elit. Id, itaque quisquam? Quia cum alias in, beatae soluta dicta fuga corrupti magni? Alias minus nostrum qui at corporis, magni optio ipsam! </div> </dd> <dt class="question js-accordion"> <button class="question__trigger" type="button">Second Question?</button> </dt> <dd class="answer"> <div class="answer__content"> Lorem ipsum dolor sit amet consectetur adipisicing elit. Id, itaque quisquam? Quia cum alias in, beatae soluta dicta fuga corrupti magni? Alias minus nostrum qui at corporis, magni optio ipsam! </div> </dd> </dl>
Что сразу бросается в глаза, так это теги dl, dt, dd. Почему нельзя просто везде использовать div?
В принципе, можно, но аккордеон — это хороший пример списка из терминов и определений, для чего эти теги и предназначены.
В dt помещаем вопрос, но для чего оборачивать его в кнопку? Опять семантика: когда пользователь кликает на элемент — что-то должно произойти, для этого необходимо использовать button.
Вторая причина — доступность через клавиатуру: на аккордеон можно попасть через tab и раскрыть через пробел.
<dd class="answer"> <div> Lorem ipsum dolor sit amet consectetur adipisicing elit. Id, itaque quisquam? Quia cum alias in, beatae soluta dicta fuga corrupti magni? Alias minus nostrum qui at corporis, magni optio ipsam! </div> </dd>
В dd кладем ответ, обернутый в дополнительный div?
Дело в том, что для того чтобы анимировать «раскрытие» аккордеона, необходимо знать высоту ответа.
В неактивном состоянии тег answer имеет нулевую высоту, поэтому мы помещаем в него дополнительный div, размер которого мы и будем измерять.
Как только аккордеон будет раскрыт — мы присвоим answer ранее измеренную высоту.
JavaScript
Найдем все аккордеоны на странице и инициализируем их:
const elements = [...document.querySelectorAll('.js-accordion')]; elements.forEach(accordion);
Воспользуемся замыканием:
function accordion(element) { // объект, в котором будем хранить всю необходимую информацию const instance = {}; function init() { // найдем вопрос и ответ findElements(instance, element); // измерим высоту ответа measureHeight(instance); // добавим логику нажатия на кнопку subscribe(instance); } init(); }
findElements
function findElements(object, element) { const instance = object; // element - это "вопрос", по которому происходит нажатие instance.element = element; // target - это "ответ", который должен "раскрываться" instance.target = element.nextElementSibling; }
Если вспомнить разметку — ответ всегда идет следом за вопросом, поэтому мы и используем свойство nextElementSibling.
measureHeight
function measureHeight(object) { const instance = object; // вычисляем высоту ответа instance.height = object.target.firstElementChild.clientHeight; }
В то время, как target имеет нулевую высоту, у его потомка размер остался тем же. Этот самый размер мы и сохраняем.subscribe
У answer высота — 0, а у answer__content — нет
subscribe
function subscribe(instance) { instance.element.addEventListener('click', (event) => { // отменяем "действие по умолчанию" event.preventDefault(); // меняем состояние аккордеона changeElementStatus(instance); }); // если размер окна поменяется - измерим высоту ответа заново window.addEventListener('resize', () => measureHeight(instance)); }
changeElementStatus
function changeElementStatus(instance) { if (instance.isActive) { hideElement(instance); } else { showElement(instance); } }
Если аккордеон активен — сворачиваем его, иначе — раскрываем.
hideElement и showElement
function hideElement(object) { const instance = object; const { target } = instance; // обнуляем высоту ответа target.style.height = null; // делаем статус неактивным instance.isActive = false; } function showElement(object) { const instance = object; const { target, height } = instance; // задаем ответу сохраненную в measureHeight высоту target.style.height = `${height}px`; // делаем статус активным instance.isActive = true; }
Это даже не статья, а пересказ документации, но для ознакомления все же напишу.
Весь способ заключается в двух тегах:
<details> <summary>How to create accordion without JavaScript?</summary> Lorem ipsum dolor sit amet consectetur, adipisicing elit. Facilis id recusandae tempore nam placeat ratione accusantium maiores nobis velit, incidunt, hic, omnis dolorem possimus. Hic porro tenetur fugiat blanditiis iste. </details>
Рассмотрим два варианта создания аккордеона на примере списка вопросов и ответов. Сделаем это через:
— JavaScript;
— Тег Details;
JavaScript
Создадим простую разметку:
<button class="question">What is question?</button> <div class="answer"> Lorem ipsum dolor, sit amet consectetur adipisicing elit. Dolorem dicta blanditiis eum dolorum sit voluptatum impedit eius similique quasi obcaecati! Mollitia reprehenderit magni ex. Eaque modi corrupti placeat labore possimus. </div>
И сразу же добавим стили:
.answer { height: 0; overflow: hidden; }
.is-active + .answer { height: auto; }
Как все будет работать:
— В кнопке с классом question храним сам вопрос;
— В div с классом answer храним ответ, задаем ему нулевую высоту;
— При нажатии на кнопку присваиваем ей класс is-active;
— Раскрываем answer через соседний селектор.
Зададим добавление класса is-active через JavaScript:
// Находим кнопку с вопросом const question = document.querySelector('.question');
// Добавляем слушатель на клик question.addEventListener('click', ({ target }) => { // Меняем состояние кнопки target.classList.toggle('is-active'); });
Все, пара строк кода и аккордеон готов?
С одной стороны да, но данный вариант имеет один недостаток — ответ появляется «резко», без плавного раскрытия.
Связано это с тем, что height: auto; нельзя анимировать через transition, необходимо знать точное значение.
Что с этим делать — обсудим в следующей статье, а пока можете ознакомиться с полной версией кода в codepen.
Тег Details
Этот способ еще проще предыдущего:
<details> <summary>How to create accordion without JavaScript?</summary> Lorem ipsum dolor sit amet consectetur, adipisicing elit. Facilis id recusandae tempore nam placeat ratione accusantium maiores nobis velit, incidunt, hic, omnis dolorem possimus. Hic porro tenetur fugiat blanditiis iste. </details>
Все, копипасть и в продакшен?
Есть ньюансы.
Во-первых, details имеет тот же недостаток, что и первый вариант — нельзя анимировать активное состояние аккордеона.
Несмотря на капризы погоды, лето неумолимо приближается. Значит, занятия в спортивном зале или домашние тренировки получится заменить на активности под открытым небом. Собрали для вас товары, которые сделают уличные воркауты интереснее, увлекательнее и полезнее.
Мегамаркет дарит пикабушникам промокод килобайт. Он дает скидку 2 000 рублей на первую покупку от 4 000 рублей и действует до 31 мая. Полные правила здесь.
В компактную поясную сумку поместятся телефон, ключи, кошелек или другие нужные мелочи. Во время тренировки все это не гремит и не мешает, но всегда находится под рукой. Материал сумки прочный и влагонепроницаемый, вещи в ней защищены от повреждений, царапин или пота.
С фитнес-резинкой можно тренировать все группы мышц: руки, ноги, кор, ягодицы. А еще она облегчает подтягивания и помогает мягко растягиваться. В сети можно найти огромное количество роликов с упражнениями разной степени сложности. Нагрузка легко дозируется: новичкам подойдет резинка с сопротивлением до 23 кг, опытным атлетам — до 57 кг. При этом оборудование максимально компактно и поместится даже в небольшую сумку.
Для тех, кому надоели обычные тренировки. Слэклайн — это стропа шириной 50 мм, с помощью которой осваивают хождение по канату. Тренажер учит сохранять баланс, прокачивает координацию и концентрацию, а еще дает отличную нагрузку на спину, руки и ноги.
Настольный теннис — простой в освоении вид спорта, который отлично помогает размяться и тренирует скорость реакции. В комплект входят две ракетки, три мяча, сетка, накладка и чехол — все, что нужно, чтобы поиграть вечером во дворе с другом или устроить небольшие соревнования. Этот недорогой набор подойдет именно для развлечения и веселья, устанавливается почти на любой стол.
Еще один вид спорта, которым можно заниматься, даже не имея серьезной подготовки — бадминтон. С набором от Wish Steeltec вы сможете потренировать силу удара, побегать и просто хорошо провести время. Детали яркие, так что их трудно потерять даже на природе. Леска натянута прочно, ресурса ракеток должно хватить не на один сезон.
Фрисби воспринимается как простое пляжное развлечение. Тем не менее перекидывание друг другу тарелки задействует все группы мышц и развивает скорость реакции. Эта тарелка летит далеко и по понятной траектории — отличный снаряд для начала. Кстати, фрисби — это еще и ряд спортивных дисциплин со своими правилами и техническими сложностями, так что игра с друзьями может перерасти в серьезное увлечение.
Стильный мяч из износостойкой резины отлично подходит для уличных тренировок. Вы сможете поиграть компанией в баскетбол или стритбол или просто отработать броски. При производстве используется технология сбалансированного сцепления: это значит, что снаряд не сбежит от вас и будет двигаться по стабильной траектории.
Футбол — один из самых популярных в России видов спорта. Играя, можно отлично побегать, потренировать меткость и отработать взаимодействие в команде. Футбольный мяч Torres Striker выполнен из качественного полиуретана и резины и выдержит не один десяток матчей, не потеряв упругости. Отличная балансировка и оптимальный размер делают его подходящим как для взрослых, так и для подростков. Он достаточно тяжелый, почти как в профессиональном спорте, так что совсем малышам не понравится.
Пляжный или обычный волейбол? А может быть, пионербол, как в детском лагере? Мяч TORRES SIMPLE COLOR подойдет для любой из этих игр. Камера отлично держит давление, поэтому вам не придется постоянно подкачивать его, а качественные материалы (полиуретан и бутил) сохраняют все характеристики даже при интенсивном использовании.
Многоскоростной велосипед с рамой 19-го размера подойдет как мужчинам, так и женщинам. Это отличный вариант для новичков: модель доступная, удобная. Поможет понять, нравится ли вам велоспорт. Конструкция велосипеда позволяет ездить по дорогам разных типов, поэтому вы сможете перемещаться по городу или отправиться в поход. Есть складной механизм — велосипед с ним легко возить в машине, на электричке и просто хранить в кладовке.
Более продвинутая модель для тех, кто уже оценил прелесть движения на двух колесах. Геометрия велосипеда предполагает вертикальную посадку. Это обеспечивает более удобное положение тела, чем на других байках. В конструкции предусмотрены детали для комфорта и безопасности: пружинная вилка с ходом 100 мм, сервисная подводка тросов и дисковые гидравлические тормоза.
Если вы не фанат велоспорта, но хотите получить свою дозу физической нагрузки, перемещаясь по городу, выбирайте самокат. В модели PLANK Magic 200 есть регулировка руля по высоте, надежные тормоза и прочная увеличенная дека из алюминия. Когда вы катаетесь на самокате, работают мышцы ног, ягодиц, спины и живота, а заодно добираетесь, куда нужно. Если вы решите сделать паузу в тренировках, самокат легко складывается для хранения.
Любая активность на свежем воздухе требует хорошей обуви, специально сделанной для занятий спортом. Яркие кроссовки Hoka RINCON 3 с облегченным весом амортизируют, снижают нагрузку на суставы. Выраженный рельеф подошвы обеспечивает сцепление с поверхностью вне зависимости от того, где проходит тренировка: на специальной площадке, асфальте или грунте.
Легкие женские кроссовки из линейки Clifton подходят для занятий на твердых покрытиях. Дышащий сетчатый верх поддерживает вентиляцию стоп, чтобы можно было тренироваться даже в жару. Подошва из легкой пены EVA гасит силу ударов. Кроссовки беговые, подходят для тренировок на длинных дистанциях.
Во время занятий на свежем воздухе важно защитить голову от перегрева. С этим отлично справится легкая и светлая бейсболка — например, от GLHF. Она удобно сидит на голове, не сваливается и не отвлекает от занятий, благодаря сетке голова меньше потеет. Козырек жесткий и не мнется.
Не забудьте защитить кожу от солнца — чтобы не было мучительно больно на следующий день после тренировки под открытым небом. В этом поможет крем против пигментных пятен с сильной защитой от ультрафиолета SPF50. Водостойкая текстура легко наносится и быстро впитывается, действует два часа — потом крем нужно обновить.
Удобные и стильные солнцезащитные очки защищают глаза благодаря фильтру UV400, который поглощает до 99.99% ультрафиолета. Они выполнены из легких материалов и плотно прилегают к голове. Ударопрочные поликарбонатные линзы с антибликовым покрытием подходят для разных видов спорта.
Используйте промокод килобайт на Мегамаркете.Он дает скидку 2 000 рублей на первую покупку от 4 000 рублей и действует до 31 мая. Полные правила здесь.
Реклама ООО «МАРКЕТПЛЕЙС» (агрегатор) (ОГРН: 1167746803180, ИНН: 9701048328), юридический адрес: 105082, г. Москва, ул. Спартаковская площадь, д. 16/15, стр. 6