Meta etiketleri okumak için jQuery kullanmak mümkün mü


157

Meta etiketleri okumak için jQuery kullanmak mümkün mü? Öyleyse, kodun temel yapısının ne olacağını biliyor musunuz veya herhangi bir öğreticiye bağlantıları var.

Yanıtlar:


308

Sadece şöyle bir şey kullanın:

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

3
var author = $ ("meta [ad = 'yazar']"). attr ("içerik"); Alıntı biraz uzakta idi.
Jim Speaker

1
@JimSpeaker: Teknik olarak tek bir kelime için alıntı yapmaya gerek yoktur, ancak ne olursa olsun onları eklemenin daha iyi olduğunu kabul ediyorum.
Qantas 94 Heavy

20

Bu ayrıştırıcı size yardımcı olur mu?

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

Meta OG verilerini JSON'a ayrıştırır, böylece verileri doğrudan kullanabilirsiniz. İsterseniz, doğrudan JQuery kullanarak bunları doğrudan okuyabilir / yazabilirsiniz. Örneğin:

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

Özellik değerlerinin çevresindeki tek tırnaklara dikkat edin; Bu, jQuery'deki ayrıştırma hatalarını önler.


3
burada belirttiğiniz ayrıştırıcı (ve birkaç soruda) OP OG Verileri değil META TAGS hakkında sorurken OG VERİ'sidir (hatta kendiniz bile diyebilirsiniz).
Demans

Yanıt bağlantısı öldü.
Denis G. Labrecque

8

Sadece denedim ve bu jQuery sürümüne özgü bir hata olabilir, ama

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

benim için aşağıdaki sözdizimi hatasıyla sonuçlandı:

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

Görünüşe göre kolondan hoşlanmıyor. Bu gibi çift ve tek tırnak kullanarak düzeltmek başardı:

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

(jQuery sürüm 1.8.3 - üzgünüm, bunu @ Danilo'ya yorum yapardım, ama henüz yorum yapmama izin vermiyor)


5

jQuery artık destekliyor .data();, eğer varsa

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

kullanım

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

4
$("meta")

Etiket adı META olan bir dizi öğeyi geri vermeli ve sonra ilgilendiğiniz öğelerin niteliklerini seçmek için koleksiyon üzerinde yineleme yapabilirsiniz.


1

Seçilmiş Twitter meta adı için bir veri özelliği ekleyebilirsiniz.

misal :

meta name="twitter:card" data-twitterCard="" content=""
$('[data-twitterCard]').attr('content');
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.