0

我的网站设置如下:当页面加载时,会播放一个 jQuery 动画——在模板中——完成后,它会进一步调用 Ajax 来获取页面的内容。现在,我想部署像http://com-address/#!page这样的 hashbang ,我还需要在页面加载时保留动画。但我认为这个设置的问题是;当网络爬虫访问页面时,它不会等待动画完成并进行 Ajax 调用。它需要加载内容的页面状态(在我的情况下是在动画完成后获取的)。

鉴于上述情况,哪种方式更好:

  1. 更改整个流程并抢先加载页面内容并将其隐藏直到播放动画。

  2. 仅当在 URL 中找到 hash-bang 或 _escaped_fragment 时:

    一种。按照步骤 1。

    湾。加载没有动画内容的页面。

  3. 我对网络爬虫的假设是不正确的,让当前流动。

有什么建议吗?

编辑

@kdzwinel,感谢您提供有关文本浏览器的提示!

再想一想,我会选择选项 2(a),因为当爬虫访问带有碎片 URL 的资源时,它应该在页面上获得完整的结果内容。如果用户直接导航到碎片化的 URL,用户对动画的体验也会保持不变(通过在页面加载和动画开始之间删除动态内容片段上的内容)。

同样对于所有其他场景,我们将继续旧流程(动画然后通过 Ajax 获取),因为我们不想刷新页面,因为用户已经在访问网站并尝试使用带有碎片 URL 的锚进行平滑/无缝导航(绑定他们的点击事件开始动画)。

4

1 回答 1

1

网络爬虫不执行 javascript (网站管理员指南-

如果 JavaScript、cookie、会话 ID、框架、DHTML 或 Flash 等花哨的功能使您无法在文本浏览器中看到您的所有网站,那么搜索引擎蜘蛛可能无法抓取您的网站。

),如果您不想将您的内容编入索引,请使用选项 #1。打开页面时加载内容,如果浏览器支持 javascript - 隐藏内容并显示动画。

于 2012-01-18T11:31:48.660 回答