web-dev-qa-db-ja.com

jQueryを使用してメタタグを読み取ることは可能ですか

JQueryを使用してメタタグを読み取ることは可能ですか?もしそうなら、あなたはコードの基本構造が何であるかを知っているか、チュートリアルへのリンクを持っています。

150
Ankur

次のようなものを使用してください。

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

このパーサーは役立ちますか?

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

19
Danilo Moret

私はこれを試しましたが、これはjQueryバージョン固有のエラーかもしれませんが、

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

私にとって次の構文エラーが発生しました:

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

どうやらコロンが好きではないようです。次のように二重引用符と単一引用符を使用して修正できました。

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

(jQueryバージョン1.8.3-申し訳ありませんが、これを@Daniloにコメントしていたはずですが、まだコメントできません)

8
charltoons

jQueryは.data();をサポートするようになりました。

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

つかいます

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

タグ名がMETAである要素の配列を返します。その後、コレクションを反復処理して、関心のある要素の属性を選択できます。

4
illvm

Twitterメタ名を選択するには、データ属性を追加できます。

例:

meta name="Twitter:card" data-twitterCard="" content=""
$('[data-twitterCard]').attr('content');
1
PoussinDev
var author = $('meta[name=author]').attr("content");

次のような私の問題を解決します:

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