Показать содержимое по тегу: JavaScript
GraphQL + Apollo на клиенте
Небольшой рассказ о технологии GraphQL, а также пример её использования на фронтенде вместе с библиотекой Apollo.
ES2016-2018
Обзор важных нововведений в версиях стандарта языка JavaScript 2016 — 2018 годов
ES2019-2020
Обзор важных нововведений в последних версиях стандарта языка JavaScript
ООП в JavaScript
Первый рабочий пример по ООП в JavaScript. Рассмотрена функция-конструктор, добавление новых методов и свойств в неё через её прототип, наследование через new и Object.create, работа геттеров и сеттеров в конструкторе.
Объект меняется, переменная нет
Неожиданно в процессе отладки кода обнаружил вещь, о которой, будь у меня профильное образование, узнал бы курсе на 2.
Разбиваем длинные числа на разряды
Задача: нужно разбить длинные числа (тысячи, миллионы) из списка на группы по разрядам: Х ХХХ ХХХ.
Разбиение номера карты по маске
Встала вполне тривиальная для современного веба задача: клиент вводит номер карты (в данном случае карты лояльности). Нужно принудительно разбивать его пробелами по заданной маске, чтобы выглядело, как на самой пластиковой карте. Маска в моём случае передаётся как строка вида loyalty_mask = "ХХХХ ХХХХ" или loyalty_mask = "- ------- ------". Символы могут быть разными, однако нам важны только пробелы. Поэтому делаем массив, который будет содержать порядковые номера пробелов в строке:
Запретить увеличение масштаба (pinchin), но разрешить уменьшение (pinchout) на мобильных устройствах
Потребовалось разрешить пользователям уменьшить масштаб мобильного сайта до стандартного с одновременным запретом увеличивать масштаб обратно.Если страница статичная, то можно изначально запретить изменение масштаба метатэгом в пределах <head>...</head>:
Запуск функции при повороте экрана
$(window).on('orientationchange', function(){
clearTimeout(oc_timer);
oc_timer = setTimeout(function () {
// здесь функции, которые должны запускаться
}, 200);
change_counter ++;
}); Всплывающая подсказка для поля ввода email
Для мобильной версии kinohod.ru сделал всплывающую подсказку для поля ввода email.
Суть такая: клиент вводит значение email в обычный input. После знака @ по первой вводимой букве выводим подсказку хоста. Приведу здесь всю цепочку.