如何阻止Google使用Javascript加载的问候语作为元描述

如何阻止Google使用Javascript加载的问候语作为元描述,javascript,search-engine,Javascript,Search Engine,我有一个Javascript问候语,它用一个下拉横幅向新用户致意,就像SO一样。它仅在3秒钟后才可见,当单击X时,它将消失。由于我没有添加元描述标签,谷歌在每个页面上都会显示问候语作为元数据。我不明白谷歌为什么要用它,因为它并没有立即加载,如果我使用元描述,这种情况会停止吗 我应该使用元描述吗?从好的方面看,这可能有助于解决这个问题,但谷歌将无法从该网站(碰巧是一个论坛)动态获取数据。碰巧它正在这样做,我不知道为什么 谢谢 我的最佳猜测是,您的问候语文本在服务器端被添加到页面(wordpress

我有一个Javascript问候语,它用一个下拉横幅向新用户致意,就像SO一样。它仅在3秒钟后才可见,当单击X时,它将消失。由于我没有添加元描述标签,谷歌在每个页面上都会显示问候语作为元数据。我不明白谷歌为什么要用它,因为它并没有立即加载,如果我使用元描述,这种情况会停止吗

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


谢谢

我的最佳猜测是,您的问候语文本在服务器端被添加到页面(wordpress插件?),显示为可见(因此,即使禁用了javascript,也会出现),在pageload上被javascript隐藏,然后在3秒钟后才显示出来(即,它确实已经存在,因此是google找到的第一个主要文本)


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

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


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

使用动态
描述,然后?@minitech:然后在其中放入什么?整页?可能会有很多信息!输入您希望在页面上显示为描述的内容@minitech:假设搜索者输入的文本出现在问题的第五个答案中(在SO克隆上)。我希望该部分出现在描述中!您应该添加更多关于如何开始显示此问候语的信息。页面加载时是否以HTML格式打印?它是在JavaScript中硬编码的吗?它是在HTML中硬编码的,显示为:无;3秒钟后,它滑入视图。如果display:none是通过样式表应用的,那么google可能会忽略它,如果不是(即它已经是内联的),然后将它插入服务器上文档的末尾,让js在显示它之前将它移到开头。这很聪明,它已经是内联代码了。谢谢你的帮助!顺便说一句,谷歌为什么不使用我的页面内容作为描述,它更喜欢使用链接之类的东西!您的greetbox是否包含任何标签?如果是这样的话,它可能会假设这是你页面的一个重要部分。。。但谷歌对一个页面的“想法”可能值得它自己这么做;)没有,只有跨距和链接。你能告诉我关于谷歌将网站导航链接放在描述中而不是页面内容中的情况吗?你能解释我“使用谷歌的这一‘功能’让我可以操纵网站列表在搜索列表中所说的内容”吗。例如,谢谢。比如说,我希望谷歌在主页上显示“Acme Inc.的官方网站。Acme Inc.是领先的小部件和小工具供应商”,但客户不希望在页面上显示该副本,而只希望在搜索结果中显示。我只是简单地将它添加到一个div中,作为正文中的第一个节点,然后将其设置为display:none。我也这么做了,但我记得,必须巧妙地编写元内容,以反映页面的副本和上下文,否则谷歌的算法可能会让你失望。还要记住,许多搜索引擎忽视或至少很少注意元标记所说的内容,通常倾向于使用自己的方法来理解页面内容/上下文/相关性