0

我有一个 Javascript 问候语,它用 SO 的下拉横幅迎接新用户。它仅在 3 秒后才可见,当单击 X 时它会消失。由于我没有放置元描述标签,谷歌在每个页面上都将问候语显示为元数据。我不明白为什么谷歌会使用这个,因为它没有立即加载,如果我使用元描述,这会停止发生吗?

我应该使用元描述吗?从好的方面来说,它可能有助于解决这个问题,但 Google 将无法从该站点(恰好是一个论坛)动态获取数据。碰巧它正在这样做,我不知道为什么?

谢谢!

4

2 回答 2

1

我最好的猜测是您的问候语中的文本被添加到服务器端的页面(wordpress插件?)中可见(即使禁用javascript也会显示),在页面加载时被javascript隐藏,然后在3之后显示秒(即它确实已经存在,因此是谷歌发现的第一个主要文本)。

尝试更改您的问候插件/代码以在页面加载后生成包含问候消息的 div,或者至少将其附加到文档的末尾(或应用style="display:none;"为内联样式,以便 Google 可以看到它)在服务器上 -然后调整 js 以显示它。它不再会在禁用 js 的情况下迎接访问者,但也会允许 google 在不遇到问候语的情况下访问您的主要内容。

于 2012-06-30T20:48:56.830 回答
1

这样做是因为它是解析 DOM 时找到的第一个可读的文本位。我不确定谷歌在将页面状态保存到缓存之前是否存在延迟,但这无关紧要。我实际上使用谷歌的这个“功能”来允许我操纵网站列表在搜索列表中所说的内容。如果您不希望它出现,只需将消息的代码移动到您的<body>s节点列表的底部(即在您关闭之前将其放置</body>)。

display:none 不会做任何必须移动的事情,以便在解析 DOM 节点树时它不在前几行可读的文本中。

于 2012-06-30T21:21:25.670 回答