Как получить title HTML-страницы через JavaScript

Пройдите тест, узнайте какой профессии подходите

Я предпочитаю
0%
Работать самостоятельно и не зависеть от других
Работать в команде и рассчитывать на помощь коллег
Организовывать и контролировать процесс работы

Быстрый ответ

Если вы хотите извлечь заголовок страницы с помощью JavaScript, используйте свойство document.title.

JS
Скопировать код
console.log(document.title); // Выводим заголовок страницы в консоль

Это простое решение совместимо со всеми браузерами.

Теперь рассмотрим подробнее способы работы с динамическими заголовками, garant' кроссбраузерную совместимость и повысим производительность при работе с заголовками HTML-страницы.

Кинга Идем в IT: пошаговый план для смены профессии

Управление динамическими заголовками

В случае динамической веб-страницы, заголовок может меняться в соответствии с содержимым страницы, действиями пользователя или обновления с сервера. JavaScript предлагает встроенные методы для отслеживания таких изменений:

JS
Скопировать код
window.onhashchange = function() { // При изменении хеша в URL
  console.log(document.title); // Выводит обновлённый заголовок
}

При изменении заголовка вследствие AJAX-запросов или в приложениях, например в React, необходимо повторно запросить заголовок:

JS
Скопировать код
fetch('/dynamic-content').then(() => {
  console.log(document.title); // Извлекает обновлённую информацию
});

Работа с тегом title

В некоторых сценариях, вам может понадобиться напрямую взаимодействовать с тегом <title>, особенно если в раздел <head> содержится большое количество информации. Вы можете сделать это следующим образом:

JS
Скопировать код
var titleTag = document.querySelector('head title');
console.log(titleTag.textContent); // Выводит содержимое тега <title>

Из альтернатив вы можете использовать document.getElementsByTagName('title')[0] или getElementById('id'), если у тега title присутствует id. Важно уделять достаточно внимания устойчивой обработке ошибок, чтобы избежать проблем с работой скриптов.

Интеграция управления заголовком в ваше приложение

Управление заголовком – это ключевой аспект архитектуры приложения. Заголовок страницы используется для организации навигации по сайту ("хлебных крошек"), иерархии и оптимизации SEO. Вот пример скрипта, который обеспечивает синхронизацию заголовка страницы с элементом h1:

JS
Скопировать код
document.getElementById('page-header').textContent = document.title; // Обеспечивает согласованность представления

В результате заголовок браузера будет согласованным с контентом страницы.

Кроссбраузерная совместимость

Несмотря на то, что document.title поддерживается всеми браузерами, стоит проверить единообразие его реализации в различных браузерах.

Для оптимизации производительности при частом изменении заголовка следует уменьшить частоту его обновления с помощью дебаунсинга (установления задержки между обновлениями), чтобы избежать проблем с производительностью приложения.

Расширенные техники настройки заголовка

После ознакомления со стандартными подходами, вы можете изучить более сложные техники, такие как связывание заголовка с моделью данных в фреймворках Vue.js или Angular для реактивного обновления:

JS
Скопировать код
// Пример использования Vue.js
new Vue({
  el: 'title',
  data: {
    pageTitle: 'Исходный заголовок'
  },
  watch: {
    pageTitle(newValue) {
      document.title = newValue; // Обновляет заголовок
    }
  }
});

Визуализация

Представим, что ваш браузер – это окно в библиотеку, а каждая вкладка – это книга.

Markdown
Скопировать код
Вкладка 1: 📗 (Заголовок: Тайный сад)
Вкладка 2: 📘 (Заголовок: Моби Дик)
Вкладка 3: 📙 (Заголовок: Дон Кихот)

Чтобы узнать заголовок Книги 2 (Вкладка 2), вы используете JavaScript:

JS
Скопировать код
var bookTitle = document.title; // Изучаем корешок

И понимаем, что:

Markdown
Скопировать код
🔍 Заголовок книги: "Моби Дик"

Каждая вкладка/книга раскрывает свой корешок (заголовок) при внимательном рассмотрении с помощью объекта document в JavaScript!

Полезные материалы

  1. Document: title property – Web APIs | MDNруководство по использованию свойства Document.title в JavaScript.
  2. HTML DOM Document title Propertyинструкции по доступу и изменению заголовка HTML-документа через JavaScript.
  3. Как динамически изменить заголовок веб-страницы? – Stack Overflow — Обсуждения и различные способы манипулирования заголовками.
  4. Изменение документа — основы модификации документов в JavaScript, включая изменение заголовка.
  5. HTML Стандарт — официальная спецификация HTML, содержащая информацию о теге title.
  6. .attr() | jQuery API Documentation — примеры использования метода .attr() в jQuery для работы с атрибутами, такими как title.
  7. Понимание элементов в head — статья, объясняющая роль секции head в HTML, включая тег title.