jQuery를 사용하여 메타 태그를 읽을 수 있습니까?


157

jQuery를 사용하여 메타 태그를 읽을 수 있습니까? 그렇다면 코드의 기본 구조가 무엇인지 알거나 자습서에 대한 링크가 있습니다.

답변:


307

다음과 같은 것을 사용하십시오.

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

3
var author = $ ( "meta [name = 'author']"). attr ( "content"); 인용은 조금 벗어났다.
Jim Speaker

1
@ JimSpeaker : 기술적으로는 한 단어에 따옴표가 필요하지 않지만 관계없이 인용 부호를 포함하는 것이 좋습니다.
콴타스 94 헤비

20

이 파서가 도움이 되겠습니까?

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에서 구문 분석 오류를 방지합니다.


3
OP가 OG 데이터가 아닌 메타 태그에 대해 묻는 동안 여기에 지정하고 (몇 가지 추가 질문에서) 파서는 OG 데이터에 대한 것입니다.
Dementic

답글 링크가 종료되었습니다.
Denis G. Labrecque

8

방금 시도한 결과 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에 댓글을 달았지만 아직 댓글을 남기지 않습니다)


5

jQuery는 이제를 지원 .data();하므로

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

사용하다

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

4
$("meta")

태그 이름이 META 인 요소의 배열을 다시 제공 한 다음 컬렉션을 반복하여 관심있는 요소의 속성을 선택할 수 있습니다.


1

트위터 메타 이름 선택의 경우 데이터 속성을 추가 할 수 있습니다.

예 :

meta name="twitter:card" data-twitterCard="" content=""
$('[data-twitterCard]').attr('content');
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.