É possível usar jQuery para ler meta tags
Pergunta
É possível usar jQuery para ler meta tags. Se assim você sabe o que a estrutura básica do código vai ser, ou ter links para algum tutorial.
Solução
Basta usar algo como:
var author = $('meta[name=author]').attr("content");
Outras dicas
Será que este analisador ajudá-lo?
https://github.com/fiann/jquery.ogp
Ele analisa dados OG meta para JSON, assim você pode apenas utilizar os dados diretamente. Se preferir, você pode ler / escrever-los diretamente usando JQuery, é claro. Por exemplo:
$("meta[property='og:title']").attr("content", document.title);
$("meta[property='og:url']").attr("content", location.toString());
Observe as aspas simples em torno dos valores de atributos; Isto evita erros de análise em jQuery.
Esta é a mesma resposta que eu dei aqui: https://stackoverflow.com/questions/4059207
Eu apenas tentei isso, e isso poderia ser um erro específico da versão jQuery, mas
$("meta[property=twitter:image]").attr("content");
resultou na seguinte erro de sintaxe para mim:
Error: Syntax error, unrecognized expression: meta[property=twitter:image]
Aparentemente, ele não gosta do cólon. Eu era capaz de corrigi-lo usando aspas duplas e simples como esta:
$("meta[property='twitter:image']").attr("content");
(jQuery versão 1.8.3 - desculpe, eu teria feito este comentário para @Danilo, mas não vai me deixar comentário ainda)
jQuery agora suporta .data();
, por isso, se você tiver
<div id='author' data-content='stuff!'>
uso
var author = $('#author').data("content"); // author = 'stuff!'
$("meta")
Se lhe dar de volta um conjunto de elementos cujo nome da marca é META e então você pode iterar sobre a coleção de escolher o que quer que os atributos dos elementos que você está interessado.
Para selecionar nome do twitter meta, você pode adicionar um atributo de dados.
exemplo:
meta name="twitter:card" data-twitterCard="" content=""
$('[data-twitterCard]').attr('content');
var author = $('meta[name=author]').attr("content");
resolver o meu problema, tais como:
<meta name="author" content="a314r">