带有转义碎片URL的jQuery动画(hash-bang,#!)

时间:2012-01-18 11:16:28

标签: php ajax url web-crawler hashbang

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

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

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

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

    一个。按照步骤1进行操作。

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

  3. 我对网络抓取工具的假设不正确&让... 电流本来就是。

  4. 任何单挑建议?

    修改

    @kdzwinel,感谢关于文本浏览器的提示!

    在第二个想法中,我将使用选项2(a),因为当爬虫访问具有碎片URL的资源时,它应该在页面上获得完整的结果内容。如果用户直接导航到碎片化的URL,动画的用户体验也将完好无损(通过在页面加载和动画开始之间删除动态内容片段上的内容)。

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

1 个答案:

答案 0 :(得分:1)

网络抓取工具不会执行javascript(webmaster guidelines -

  

如果JavaScript,Cookie,会话ID,框架,DHTML或Flash等精彩功能让您无法在文本浏览器中查看所有网站,那么搜索引擎蜘蛛可能无法抓取您的网站。

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