-
Безопасная отправка целей Яндекс.Метрики: чтобы сайт не падал
JS-обёртка для reachGoal: проверка загрузки ym, защита от ошибок и блокировщиков, безопасные параметры и пример отслеживания кликов через data-атрибуты.
-
Режим отладки Яндекс.Метрики: _ym_debug=1 и _ym_debug=2
Как включить _ym_debug для Яндекс.Метрики, увидеть отправку целей и хитов в консоли или панели отладки, и быстро найти причину “цель не срабатывает”.
-
jQuery 4.0: важные изменения и чек-лист обновления
Краткий обзор ключевых изменений jQuery 4.0: поддержка браузеров, CSP/Trusted Types, изменения Ajax и событий, удалённые API и практичный чек-лист миграции.
-
Ajax (Fetch) Параллельно vs последовательно (async/await)
Когда выполнять запросы параллельно, а когда последовательно. Примеры с Promise.all и зависимыми запросами.
-
Ajax (Fetch) таймаут и отмена через AbortController
Отмена зависших запросов через AbortController: таймауты, безопасная очистка, обработка AbortError. Готовая функция fetchWithTimeout.
-
Ajax (Fetch) повторы с экспоненциальной паузой (сетевые сбои)
Повторить запрос несколько раз с паузой, которая увеличивается после каждой неудачи
-
Ajax (Fetch) запрос на чистом JavaScript с await
async/await — это удобный способ работать с промисами без леса .then()
-
Работа с асинхронным кодом js на основе промисов
async/await — это современный синтаксис для работы с асинхронным кодом на основе промисов
-
Fallback-загрузка JS-библиотеки
Иногда, чтобы предотвратить поломку функционала сайта, стоит добавить резервную (fallback) загрузку из внешнего источника
-
Проверить поддержку WebP с помощью JavaScript
Способ проверить поддержку WebP с помощью JavaScript
-
Консоль для мобильных браузеров
Eruda – легковесная JavaScript-библиотека, которая добавляет на веб-страницу консоль для отладки
-
Bookmarklet – это закладка, которая вместо URL содержит JavaScript-код
При нажатии на такую закладку браузер выполнит указанный код на текущей странице
-
Debounce-функция в JavaScript
Debounce-функция позволяет «сгладить» частые вызовы определённой функции, вызывая её лишь после того, как поток событий прекратится на заданный интервал времени
-
Модули в JavaScript
Это способ разделения кода на отдельные файлы, каждый из которых можно импортировать в другие модули или в основной файл приложения
-
Адаптация ширины виджета Google reCAPTCHA v2
Решение заключается в использовании CSS для масштабирования виджета
-
Swiper - слайдер на чистом js
Предоставляет множество опций для создания слайдеров, каруселей, галерей и даже сложных интерактивных интерфейсов.
-
Разрешение видео, разрешение экрана и объём данных
Разрешения экрана и приблизительный объём данных, используемых в минуту при просмотре видео в выбранном качестве
-
Отобразить уведомление в веб-приложении с помощью Web Notification API
Эти уведомления могут быть показаны пользователю в любой момент, независимо от того, активно ли окно браузера, в котором открыто веб-приложение
-
Отслеживать изменения размера элементов DOM с помощью Resize Observer API
Resize Observer API — это браузерный API, который позволяет вам отслеживать изменения размера элементов DOM
-
Запустить js скрипт в фоне с помощью Web Worker
Web Worker — это веб-технология, которая позволяет запускать скрипты на фоне, независимо от основных скриптов веб-страницы
-
Определить находится страница в фокусе пользователя или скрыта из виду с помощью Page Visibility API
Это полезно, когда требуется выполнять определённые действия или изменять поведение страницы, основываясь на состоянии видимости
-
Получить геолокацию устройства с помощью Geolocation API
Geolocation API может быть использован для определения географического положения пользователя
-
Доступ к данным акселерометра устройства с помощью Accelerometer API
Акселерометр — это датчик, который измеряет ускорение движения устройства в трёх осях: оси X, Y и Z
-
Ограничение Web API на запуск без взаимодействие пользователя
Некоторые Web API не могут быть использованы без взаимодействия пользователя со страницей
-
Распознать речь и преобразовать её в текст с помощью Web Speech API
API позволяет распознавать человеческую речь и преобразовывать её в текст
-
Синтезировать речь из текста с помощью Web Speech API
API SpeechSynthesis позволяет синтезировать речь из текста
-
Проверить превышение размера хранилища localStorage и sessionStorage в браузере
Eсли операция вызывает исключение QuotaExceededError, это означает, что размер хранилища был превышен
-
Проверить доступность localStorage и sessionStorage в браузере пользователя
Проверка доступности хранилища, чтобы обработать ситуацию, когда эти функции отключены или недоступны
-
Хранение информации в объекте SessionStorage
Это объект веб-хранилища, доступный в браузере, который позволяет хранить данные в рамках сессии
-
Хранение информации в объекте LocalStorage
Это объект, встроенный в веб-браузеры, который позволяет веб-сайтам хранить информацию на компьютере пользователя