此问题与Get meta data attribute in javascript不重复。我想通过语言获得meta name
。
我在HTML代码中有以下内容:
<meta name="DC.Subject" xml:lang="pl" content="wróg" />
<meta name="DC.Subject" xml:lang="en" content="enemy" />
HTML中还有其他meta name
个标记。
使用以下方法获取第一个DC.Subject
的内容非常容易:
document.getElementsByName("DC.Description")[0].getAttribute("content"))
和第二个
document.getElementsByName("DC.Description")[1].getAttribute("content"))
但这不是语言特定。但是,如何在 JavaScript 中使用DC.Description
获取xml:lang=
的内容?
答案 0 :(得分:1)
您可以按如下方式使用document.querySelector
:
var plMeta = document.querySelector('[xml\\:lang="pl"][name="DC.Subject"]');
console.log(plMeta);
<meta name="DC.Subject" xml:lang="pl" content="wróg">
<meta name="DC.Subject" xml:lang="en" content="enemy">
这是一个相关的Q&amp; A,可以更好地与涉及名称空间的CSS选择器联系:Is it possible to use HTML's .querySelector() to select by xlink attribute in an SVG?
答案 1 :(得分:0)
您需要转义属性名称中有问题的:
字符:
var xml_lang_elements = document.querySelectorAll('[xml\\:lang][name="DC.Subject"]');
for (var i = 0; i < xml_lang_elements.length; i++) {
console.log(xml_lang_elements[i].getAttribute('content'));
}
&#13;
<meta name="DC.Subject" xml:lang="pl" content="wróg" />
<meta name="DC.Subject" xml:lang="en" content="enemy" />
&#13;