非常感谢您的帮助
我有以下代码:假设从网站获取元标记:
function calculate() {
// This gets the title:
g_title = ('' + document.title + '');
g_title_count = ('' + document.title.split(' ').length + '');
g_title_length = ('' + document.title.length + '')
// This checks all the MetaTags:
g_metadata = document.getElementsByTagName("meta")[i];
g_keywords = "test";
if (typeof g_metadata != 'undefined') {
if (g_metadata) {
var i = 0;
for (i = 0; i <= 10; i++) {
if (g_metadata.name == 'keywords') {
g_keywords[i] = (g_metadata.name[i] + g_metadata.content[i]);
}
}
}
}
}
此值当前返回上面代码中指定的“test”:
document.form1.g_keywords.value = g_keywords
但是我需要它来捕获关键字元标记、描述和标题。
<title>Test 1</title>
<meta name="keywords"content="test2" />
<meta name="description" content="test3" />
然后将其写入表单:
<textarea name="g_keywords" id="g_keywords" cols="80" rows="5" onchange="calculate(this.form1)"></textarea>
它目前适用于 Title
但不是为了得到 <meta name="keywords" content="" >
标签
if (g_metadata.name == 'keywords') {
g_keywords[i] = (g_metadata.name[i] + g_metadata.content[i]);
}
我已经尝试过创建上面的内容,但不确定如何执行...
请帮忙 - 谢谢
最佳答案
// Collect all keywords
g_metadata = document.getElementsByTagName("meta");
g_keywords = []; // should be an array
var len = g_metadata.length;
for (var i = 0; i < len; i++) {
if (g_metadata[i].name == 'keywords') {
g_keywords = g_metadata[i].content.split(",");
}
}
我认为应该只有一个关键字 <meta>
标签,所有关键字都列在那里,用逗号分隔。
<强>[Demo ]
关于javascript - 使用 javascript 获取元数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3798658/