Если важная функция существует только после выполнения скрипта, сбой JavaScript перестаёт быть мелкой UI-проблемой: часть предложения магазина исчезает для пользователя, поиска или AI-системы.
HTML-first: важные данные и действия доступны сразу
Мы нашли 16 мест, где без JavaScript могли исчезать не декоративные элементы, а важные данные и действия: навигация, доставка, оплата, описание товара и части сценария покупки. Я сформулировал HTML-first подход: критичное должно существовать сразу, а JavaScript — улучшать интерфейс.
Коротко о кейсеПровёл инвентаризацию JS-зависимостей, сформулировал целевую HTML-first архитектуру и порядок внедрения по критичности.
16 зависимых блоков собраны в 5 направлений работ. Для каждого определено, какие данные и действия должны быть доступны до JavaScript.
Навигация, коммерческие условия и важный товарный контент не должны исчезать только потому, что скрипт не отработал.
16 проблемных блоков — пять направлений
Проблемы сгруппированы в навигацию, региональность, покупку, контент товара и дополнительный UX.
Навигация и структура
Каталог и важные ссылки должны существовать в HTML, а не появляться только после скрипта.
Регион и доставка
Регион, доставка и запасной сценарий должны иметь понятное исходное состояние.
Покупка и условия
Кнопка покупки и ключевые условия не должны полностью исчезать без JavaScript.
Контент и доверие
Описание, характеристики, отзывы и Q&A существуют независимо от вкладок и модальных окон.
Дополнительный интерфейс
Для галереи, рекомендаций, избранного и фильтров отдельно определяем, что должно работать сразу.
Почему одного визуального просмотра недостаточно
После полной загрузки страница может выглядеть нормально, хотя часть важной информации появляется только после работы скриптов. Инвентаризация показала такие зависимости в навигации, региональных условиях, коммерческих данных и сценариях покупки.
Что должно работать до JavaScript
В HTML остаются важные факты и основные действия; JavaScript добавляет удобство и интерактивность.
Базовая HTML-версия
Критические факты, ссылки и основные действия доступны сразу.
JavaScript сверху
Скрипты улучшают интерфейс, но не являются единственным источником важного содержания.
Как это выглядит на практике
Для каждого блока фиксируем простой вопрос: что человек должен увидеть и сделать, если JavaScript ещё не загрузился?
Навигация
Каталог и важные ссылки в футере существуют HTML-ссылками; JavaScript управляет раскрытиями и анимациями.
Региональность
Есть регион по умолчанию и базовые условия; автоопределение региона остаётся дополнительным удобством.
Покупка
Кнопка и ключевые условия имеют базовую версию; JavaScript делает сценарий быстрее и удобнее.
Карточка товара
Вкладки управляют отображением, но само содержимое уже есть на странице.
Что пользователь и робот могут потерять без JavaScript
Проблема не сводилась к одному SEO-тегу: часть коммерческого опыта существовала только после выполнения скриптов.
До: критичные блоки зависят от JS
Каталог, часть региональных условий, кнопка покупки, описание, доставка, отзывы и часть галереи могли быть неполными или отсутствовать.
Цель: HTML содержит базовую версию
Навигация, ключевые факты и основные действия доступны сразу; JavaScript добавляет быстрый add-to-cart, калькуляторы, модальные окна и другие улучшения.
SSR — один из способов реализации
Серверный рендеринг (SSR) — один из способов получить такую базовую версию. Главное требование формулируется через доступность конкретных данных и действий, а не через выбор технологии.
Контекст и измерение
- Контекст
- Крупный интернет-магазин · реальная инициатива
- Масштаб / период
- 16 зависимых блоков · 5 направлений · внедрение продолжается
Что проверяем после внедрения
После внедрения проверяем наличие важных фактов в HTML, работу основных действий без JavaScript, корректность данных, скорость страницы и конверсионные показатели.
Есть похожая задача?
Расскажите, где SEO упирается в продукт, разработку или данные.