获取javascript中的元数据属性

Get meta data attribute in javascript

本文关键字:数据属性 javascript 获取      更新时间:2023-09-26

我在从元标记检索信息时遇到问题。我正试图从一个网站上获取img src,但无法完全弄清楚。以下是我尝试做的一个例子。

<meta property="og:image" content="http://foo.jpg">
var image = document.querySelector('meta[property="og:image"]').getAttribute('content');

我试过这个,但不起作用。有什么想法吗?

meta元素并不特殊,您可以通过正常方式查询它们并获取它们的属性。

在这种情况下,以下是如何从第一个meta[property="og:image"]元素获得content属性值:

var element = document.querySelector('meta[property~="og:image"]');
var content = element && element.getAttribute("content");

所有现代浏览器都支持querySelector,IE8也支持它。

请注意,content属性也可用作反射属性,因此您可以只使用.content而不是.getAttribute("content"):

var element = document.querySelector('meta[property~="og:image"]');
var content = element && element.content;

在现代JavaScript中,您可以使用可选的链接运算符(?.)来组合这两个语句:

const content = document.querySelector('meta[property~="og:image"]')?.content;
// −−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−^

如果没有找到元素,content将得到值undefined;否则,它将获得反射属性的值(即属性值)。