Можно ли использовать jQuery для чтения метатег

Можно ли использовать jQuery для чтения метатегов. Если да, то знаете, какова будет основная структура кода или есть ссылки на любые учебники.

Ответы

Ответ 1

Просто используйте что-то вроде:

var author = $('meta[name=author]').attr("content");

Ответ 2

Помог бы вам этот парсер?

https://github.com/fiann/jquery.ogp

Он анализирует метаданные OG в JSon, поэтому вы можете просто использовать данные напрямую. Если вы предпочитаете, вы можете читать/писать их напрямую, используя JQuery, конечно. Например:

$("meta[property='og:title']").attr("content", document.title);
$("meta[property='og:url']").attr("content", location.toString());

Обратите внимание на одиночные кавычки вокруг значений атрибутов; это предотвращает ошибки синтаксического анализа в jQuery.

Это тот же ответ, который я дал здесь: https://stackoverflow.com/questions/4059207

Ответ 3

Я просто попробовал это, и это может быть ошибка, зависящая от версии jQuery, но

$("meta[property=twitter:image]").attr("content");

привело к следующей синтаксической ошибке для меня:

Error: Syntax error, unrecognized expression: meta[property=twitter:image]

По-видимому, это не нравится двоеточие. Я смог исправить это, используя двойные и одинарные кавычки, подобные этому:

$("meta[property='twitter:image']").attr("content");

(jQuery version 1.8.3 - извините, я бы сделал комментарий к @Danilo, но он еще не позволит мне прокомментировать)

Ответ 4

jQuery теперь поддерживает .data();, поэтому, если у вас есть

<div id='author' data-content='stuff!'>

использование

var author = $('#author').data("content"); // author = 'stuff!'

Ответ 5

$("meta")

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

Ответ 6

Для выбора метатега имени твиттера вы можете добавить атрибут данных.

пример:

meta name="twitter:card" data-twitterCard="" content=""
$('[data-twitterCard]').attr('content');

Ответ 7

var author = $('meta[name=author]').attr("content");

решить мою проблему, например:

<meta name="author" content="a314r">