Многие люди помещают крайне бесполезные и раздражающие вещи в свои теги <title>
, и я пытаюсь найти код Javascript, который извлекает только интересную часть.
Например, в поиске Google вы получите заголовок этого документа:
некоторый случайный поиск - Поиск в Google
Часть "Поиск Google" является избыточной, поскольку у вас уже есть эта информация в доменном имени (и значок). В этом примере я только хочу эту часть:
some random search
Большинство авторов сайта, вероятно, используют "тире нотацию", которая выглядит следующим образом:
Site name - Title
или
Title - Site name
Но если бы это было так просто, я бы не спрашивал здесь. ;)
Есть также несколько действительно раздражающих случаев, когда заголовок вообще отсутствует в теге <title>
. (О, ирония!) Просто взгляните на эту страницу из Нью-Йорк Таймс: Слабые стороны египетских эксплуататоров, эксплуатирующих Интернет - NYTimes.com . Принимая во внимание, что заголовок статьи фактически: Egypt Leaders Found ‘Off’ Switch for Internet
. Что за черт, Нью-Йорк Таймс?
Какой самый надежный подход для извлечения этой информации при условии, что у нас есть доступ к DOM страницы? Я думаю, что хорошей отправной точкой будет тег <h1>
, но он ненадежен. Я предполагаю, что есть много авторов, которые вообще не используют его или используют его несколько раз.
Обновление: мне кажется разумным сочетание содержимого <title>
и <h1>
. Спасибо всем, кто предложил это. Но что, если нет тега <h1>
? Я думаю, что некоторые (по общему признанию, плохие) авторы не используют их и вместо этого просто указывают размер шрифта <div>
или <span>
.
Я сейчас создаю самое первое расширение для браузера. (Разве это не хорошо?) Он имеет функцию, позволяющую сохранить текущую вкладку, поэтому она должна работать в целом и для максимально возможного количества страниц.
Спасибо всем вам! :)