是否有可能使用jQuery来读取元标记

是否有可能使用jQuery来读取元标记。 如果是这样,你知道代码的基本结构是什么,或者有任何教程的链接。

只需使用像

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

这个parsing器能帮助你吗?

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

它将元数据OG数据parsing为JSon,因此您可以直接使用这些数据。 如果你愿意的话,当然可以直接使用JQuery读/写它们。 例如:

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

注意属性值的单引号; 这可以防止jQuery中的parsing错误。

这是我给这里的同样的答复: https : //stackoverflow.com/questions/4059207

我只是试过,这可能是一个特定于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发表评论,但它不会让我评论)

jQuery现在支持.data(); ,所以如果你有

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

使用

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

应该给你一个标签名为META的元素数组,然后你可以遍历集合来挑选你感兴趣的元素的任何属性。

对于select的twitter meta name,你可以添加一个数据属性。

例如:

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

解决我的问题,比如:

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