Google 等搜索引擎可以索引 JavaScript 生成的网页吗?当您右键单击并选择在由 JavaScript(例如使用 GWT)生成的页面中查看源代码时,您看不到动态生成的 HTML。我想,如果搜索引擎也看不到生成的 HTML,那么就没有太多可索引的内容,对吧?
您的怀疑是正确的 - 不能依赖 JS 生成的内容对搜索机器人可见。 关闭 JS 的任何人也看不到它 - 而且,上次我向我正在工作的网站添加了一些测试(这是一个大型的主流受众网站,每月有数十万唯一访问者) ,大约 10% 的用户没有以任何形式运行 Javascript。 其中包括搜索机器人、禁用 JS 的 PC 浏览器、许多手机、使用屏幕阅读器的盲人......等等。
这就是为什么通过 JS 生成内容(没有后备选项)是一个非常糟糕的主意。
回到基础。首先,使用bare-bones (X)HTML,基于类似 REST 的原则(至少需要 POST 请求来更改状态)创建您的网站。简单的语义标记,忘记 CSS 和 Javascript。
第一步是做到这一点,让整个网站(或尽可能多的网站)以这种方式为搜索机器人和类似 Lynx 的用户代理良好工作。
然后添加一个视觉层:CSS/图形/媒体以进行视觉修饰,但不要显着更改原始的 (X)HTML 标记;允许原始纯文本网站保持完整并正常运行。保持标记干净!
第三是添加一个行为层:Javascript (Ajax)。为使用支持 Ajax 的 JS 的用户/浏览器提供更快、更流畅、更好的体验……但仅限于这些用户。没有 Javascript 的用户仍然受到欢迎;搜索机器人、视障人士、许多手机等也是如此。
这在网页设计界被称为“渐进增强”。这样做,您的网站就会以某种合理的形式为每个人服务。
这就是总结。 从技术上讲,没有什么可以阻止搜索引擎为其机器人/蜘蛛实现 JavaScript 引擎,但通常不会这样做。 他们可以,但他们不会。
另一方面,您可以嗅探搜索引擎的用户代理并为其提供可读的内容。 但搜索引擎通常不喜欢这样,如果它们检测到您发送到普通浏览器的内容存在差异,就会对您进行相当严厉的惩罚。
JavaScript
大多数网站使用
LIBRARIES
和FRAMEWORKS
,我不认为像谷歌机器人或任何其他蜘蛛这样的机器人也会加载与网页链接的Js
文件而不加载JS 代码会产生错误。/*Correct Me If I am wrong*/