当您尝试查看Google search results page的源代码时,您只会看到bunch of javascript code而不是可读文字。谷歌如何做到这一点?
我在网上搜索过但找不到一个好的解释,我发现的只有这个:http://goo.gl/FIvD6而且它并没有真正帮助。
我不是网络开发者,但我很好奇。简短的解释会很好。感谢。
答案 0 :(得分:1)
Google通过使用一堆客户端JavaScript生成页面来实现这一点。这几乎肯定是副作用,而不是设计目标。
答案 1 :(得分:1)
Google通过Ajax加载其他元素,因此如果您查看源代码,则无法获取它们。在进行新查询后,您可以使用Firebug之类的东西来检查DOM元素。
答案 2 :(得分:1)
该链接实际上非常清楚地解释了它。真正的问题是,谷歌并没有“隐藏”任何东西。所有这一切都有一个额外的层,称为DOM(文档对象模型)。当从Web服务器请求页面时,Web服务器可能会响应一些基本HTML和大量JavaScript代码。然后,您的浏览器会解释此响应。它将HTML元素加载到DOM中,然后开始编写所有JavaScript代码,这个JavaScript通常包含很多操作DOM的指令(页面的内存表示)。它可能会加载一些额外的数据并插入新的位和片段来显示。如果您愿意,可以使用“浏览器窗口”呈现DOM中的任何内容。这与原始请求中的内容不一定相同,因为即使在“浏览器窗口”中呈现页面之前,所有指令都已运行。
答案 3 :(得分:1)
Google使用您记下的javascript构建DOM。这样做有很多原因:
如上所述,跳进萤火虫并环顾四周:)