2

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

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

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

4

3 回答 3

6

这是可行的,但我不确定它是否能实现你所希望的。大多数人将元描述标签用于 SEO 目的,但如果描述是在页面加载后由 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,为什么它会在这样做之后重新检查元信息?

于 2012-10-26T22:23:03.587 回答
0

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

document.title = document.getElementsByClassName("Category-H1")[0].getAttribute("yourDescriptionMetaTag");
于 2012-10-26T22:22:40.497 回答
-1

我不认为这对SEO有好处。虽然它可能有效,但我不认为蜘蛛期望这些标签是动态的。但是,如果 SEO 不是重点,那么这里有另一个答案,它显示了 jquery 的方式。

Javascript动态更改元数据/元标记

于 2012-10-26T22:26:47.223 回答