Apakah mungkin menggunakan jQuery untuk membaca meta tag


157

Apakah mungkin menggunakan jQuery untuk membaca meta tag. Jika demikian, apakah Anda tahu struktur dasar kode ini, atau memiliki tautan ke tutorial apa pun.

Jawaban:


308

Cukup gunakan sesuatu seperti:

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

3
var author = $ ("meta [name = 'author']"). attr ("content"); Kutipannya sedikit aneh.
Jim Speaker

1
@ JimSpeaker: secara teknis tidak perlu mengutip untuk satu kata, meskipun saya akan setuju bahwa lebih baik untuk memasukkan mereka terlepas.
Qantas 94 Heavy

20

Apakah parser ini membantu Anda?

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

Ini mem-parsing meta data OG ke JSON, jadi Anda bisa langsung menggunakan data. Jika Anda suka, Anda dapat membaca / menulisnya langsung menggunakan JQuery, tentu saja. Sebagai contoh:

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

Perhatikan tanda kutip tunggal di sekitar nilai atribut; ini mencegah kesalahan parse di jQuery.


3
parser yang Anda tentukan di sini (dan dalam beberapa pertanyaan lagi) adalah untuk DATA OG (Anda bahkan mengatakannya sendiri) sementara OP bertanya tentang META TAGS dan bukan OG Data.
Demensik

Tautan balasan sudah mati.
Denis G. Labrecque

8

Saya baru saja mencoba ini, dan ini bisa menjadi kesalahan khusus versi jQuery, tetapi

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

mengakibatkan kesalahan sintaksis berikut untuk saya:

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

Rupanya itu tidak suka usus besar. Saya dapat memperbaikinya dengan menggunakan tanda kutip ganda dan tunggal seperti ini:

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

(jQuery versi 1.8.3 - maaf, saya akan membuat komentar ini ke @Danilo, tetapi belum mengizinkan saya berkomentar)


5

jQuery sekarang mendukung .data();, jadi jika sudah

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

menggunakan

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

4
$("meta")

Seharusnya mengembalikan array elemen yang nama tagnya adalah META dan kemudian Anda dapat mengulangi koleksi untuk memilih atribut apa pun dari elemen yang Anda minati.


1

Untuk nama meta twitter tertentu, Anda dapat menambahkan atribut data.

contoh:

meta name="twitter:card" data-twitterCard="" content=""
$('[data-twitterCard]').attr('content');
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.