设置描述元标记

时间:2012-10-26 22:20:07

标签: javascript getelementbyid getelementsbyclassname

我最近在我的网站上的几个页面中添加了以下Javascript代码行,以便从CSS类别“Category-H1”中提取H1元素的标题标记。

document.title = document.getElementsByClassName("Category-H1")[0].innerHTML;

我很好奇,我可以做类似的事情,使用我的H2元素中的JS拉入描述标签吗?

3 个答案:

答案 0 :(得分:6)

这是可行的,但我不确定它是否能达到你所希望的目标。大多数人使用元描述标签用于搜索引擎优化目的,但是如果在页面加载*之后由JavaScript设置,许多(大多数?)搜索引擎将无法识别描述。不过,如果你想这样做:

var meta=document.getElementsByTagName("meta");
for (var i=0; i<meta.length; i++) {
    if (meta[i].name.toLowerCase()=="description") {
        meta[i].content=document.getElementsByClassName("Category-H1")[0].innerHTML;
    }
}

希望这有帮助!

<小时/> *坦率地说,我不是在这里谈论经验,只是常识。对于元信息来说,动态是没有意义的,所以即使蜘蛛足够聪明地运行JavaScript,为什么它会在这样做之后重新检查元信息呢?

答案 1 :(得分:0)

您可以使用getAttribute()功能执行此操作:

document.title = document.getElementsByClassName("Category-H1")[0].getAttribute("yourDescriptionMetaTag");

答案 2 :(得分:-1)

我认为这对搜索引擎优化不利。虽然它可能有用,但我并不认为蜘蛛会期望这些标签是动态的。但如果搜索引擎优化不是重点,那么这是另一个用jquery显示的答案。

Javascript To Change Metadata / Metatags Dynamically