Est-il possible d'utiliser jQuery pour lire les balises meta


157

Est-il possible d'utiliser jQuery pour lire les balises meta. Si tel est le cas, savez-vous quelle sera la structure de base du code ou avez des liens vers des didacticiels.

Réponses:


308

Utilisez simplement quelque chose comme:

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

3
var auteur = $ ("meta [nom = 'auteur']"). attr ("contenu"); La citation était juste un peu décalée.
Jim Speaker

1
@JimSpeaker: techniquement, il n'y a pas besoin de guillemets pour un seul mot, bien que je convienne qu'il vaut mieux les inclure quand même.
Qantas 94 Heavy

20

Cet analyseur vous aiderait-il?

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

Il analyse les données méta OG en JSON, vous pouvez donc simplement utiliser les données directement. Si vous préférez, vous pouvez les lire / écrire directement à l'aide de JQuery, bien sûr. Par exemple:

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

Notez les guillemets simples autour des valeurs d'attribut; cela évite les erreurs d'analyse dans jQuery.


3
l'analyseur que vous spécifiez ici (et dans quelques questions supplémentaires) est pour OG DATA (vous le dites même vous-même) tandis que l'OP posait des questions sur META TAGS et non sur OG Data.
Dementic

Le lien de réponse est mort.
Denis G.Labrecque

8

Je viens d'essayer ceci, et cela pourrait être une erreur spécifique à la version de jQuery, mais

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

a entraîné l'erreur de syntaxe suivante pour moi:

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

Apparemment, il n'aime pas le côlon. J'ai pu résoudre ce problème en utilisant des guillemets doubles et simples comme ceci:

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

(jQuery version 1.8.3 - désolé, j'aurais fait un commentaire à @Danilo, mais il ne me laissera pas encore de commentaire)


5

jQuery prend désormais en charge .data();, donc si vous avez

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

utilisation

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

4
$("meta")

Devrait vous rendre un tableau d'éléments dont le nom de balise est META et ensuite vous pouvez parcourir la collection pour choisir les attributs des éléments qui vous intéressent.


1

Pour sélectionner le méta-nom Twitter, vous pouvez ajouter un attribut de données.

exemple :

meta name="twitter:card" data-twitterCard="" content=""
$('[data-twitterCard]').attr('content');
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.