在WEB网页上应用AJAX技术可以提高用户体验,但是对于SEO却不够友好,因为搜索引擎不会执行JS,而AJAX网页的内容都是动态生成(即网页展示的内容都是在浏览器端通过JS动态生成的)。既要保留AJAX又要利于搜索引擎收录,应该如何做到两者的兼顾呢?

搜索引擎收录网页,是通过机器蜘蛛抓取网页HTML源代码,并从中解析网页URL或网页内容。因此每个AJAX网页应分配URL,每个AJAX网页中必须含有a超链接标签,使用href属性标记各页面URL,使搜索引擎识别到相应URL。同一个URL,若是蜘蛛抓取应输出完整网页内容,若是Ajax调用则输出相应格式的返回数据。这就是Quickling技术。

对于单页面应用一般是通过URL中的“#”来区分不同的UI,但搜索引擎不会识别锚点,这种情况可以考虑使用History API,通过如下js调用改变浏览器地址栏,根据网站调用不同而改变成对应URL(注意:只能将当前浏览器URL改为同域URL)。window.history.pushState(state object, title, url);

另外,采用PhantomJS可以获取AJAX网页的HTML(包括脚本动态生成的内容),因此在不改变现有AJAX网页的基础上,通过判断是否搜索引擎访问,调用PhantomJS获取Ajax网页HTML内容返回给搜索引擎。PhantomJS官网:http://phantomjs.org/。

ajax预加载html seo,AJAX网页如何实现SEO友好相关推荐

  1. ajax预加载html seo,前端性能优化 — JS预加载和懒加载

    JS预加载 需求:有时我们需要实现例如快速快速切换页面.图片之类的功能时,能尽快的加载出我们所需的图片会极大提升用户体验,这时用预加载将图片先缓存到浏览器,用户使用需显示图片时无疑会顺畅很多. 核心: ...

  2. 使用ajax预加载图片

    使用Ajax 上面所给出的方法似乎不够酷,那现在来看一个使用Ajax实现图片预加载的方法.该方法利用DOM,不仅仅预加载图片,还会预加载CSS.JavaScript等相关的东西.使用Ajax,比直接使 ...

  3. ajax显示加载动画,jQuery Ajax 加载数据时异步显示加载动画

    jQuery Ajax 加载数据时异步显示加载动画 ajax加载后台数据就不说的那么细了. 看下面代码首先前台上放置代码 在js脚本文件中首先把这个图片动画隐藏 代码如下 $(document).re ...

  4. .ajax显示加载动画,jQuery Ajax 加载数据时异步显示加载动画

    ajax加载后台数据就不说的那么细了. 看下面代码首先前台上放置代码 在js脚本文件中首先把这个图片动画隐藏 代码如下 $(document).ready(function () { $(" ...

  5. 页面加载时就请求ajax,页面加载时发送Ajax请求

    如下所示代码,我想在页面加载时判断是否已经保存有cookie,如果有则直接发送ajax请求显示上一次的结果页面. 但是加上后面的if之后,不但不会加载结果页面,连之前的searchAjax()方法也不 ...

  6. ajax动态加载div,JQuery/AJAX:使用动态内容加载外部DIV使用动态内容

    我需要创建一个页面,使用Jquery和AJAX从外部页面加载div.JQuery/AJAX:使用动态内容加载外部DIV使用动态内容 我遇到了一些很好的教程,但它们都是基于静态内容的,我的链接和内容是由 ...

  7. django+ajax+表格加载,如何使用ajax在Django-admin表格内联中读取/写入输入字段?

    小编典典 urls.py `` from django.conf import settings urlpatterns = patterns('', (r'^json/tshirt/$', json ...

  8. 图片预加载和懒加载的实现方法

    图片预加载即提前加载图片,可保证图片快速.无缝地发布,用户需要查看时可直接从本地缓存中渲染,适用于图片占据很大比例的网站. 方法1,在CSS background中加载:会增加页面的整体加载时间 #p ...

  9. 利用CSS、JavaScript及Ajax实现图片预加载的三大方法

    预加载图片是提高用户体验的一个很好方法.图片预先加载到浏览器中,访问者便可顺利地在你的网站上冲浪,并享受到极快的加载速度.这对图片画廊及图片占据很大比例的网站来说十分有利,它保证了图片快速.无缝地发布 ...

最新文章

  1. android zxing作用,Android / ZXing不再有效
  2. 敲代码括号技巧_阅码神奇Souceinsight使用小技巧总结
  3. 【网络安全】Windows恶意软件BazarLoader分析
  4. [leetcode] 62 Unique Paths (Medium)
  5. CIKM 2021 | 自监督学习在社会化推荐系统中的应用
  6. 【STM32】ESP8266 AT指令
  7. android 消息列表,[Android]用LinearLayout 实现类微信消息列表项
  8. TCP/IP的基本工作原理
  9. jzoj4226-A【图论】
  10. linux虚拟机 xen,XEN虚拟机在Linux上的安装和使用教程分享
  11. Spring MVC学习总结(3)——Spring3 MVC详解
  12. idea中通过搜索添加maven依赖包
  13. centos io 查看程序_快速免费搭建自己的带有直播、分销、团购、秒杀功能的小程序商城...
  14. SpringBoot整合jsp的使用
  15. 【android开发】手机应用管理器的实现之实现软件加锁(四)
  16. gsyVideoPlayer直播短视频回放,集成腾讯播放器
  17. PostgreSQL DBA(63) - Extension(pg_stat_statements)
  18. 【2019.06.21】基于Airtest的微信朋友圈自动点赞脚本设计与实现 2019.06.21脚本正常运行
  19. Jie Business Project
  20. Hbuilder mui 相册拍照图片上传

热门文章

  1. leetcode 85 python
  2. 图论算法——图的遍历
  3. 下载丨8月数据库技术通讯:不合理业务设计导致CPU飙升
  4. 快收下这份“数据库运作实践”秘制口诀
  5. DBA的宿命(困兽之斗)
  6. 老司机带你在MySQL领域“大吉大利,晚上吃鸡”
  7. 被面试官问懵:TCP 四次挥手收到乱序的 FIN 包会如何处理?
  8. Tensor:Pytorch神经网络界的Numpy
  9. Apache CarbonData 2.0 开发实用系列之一:与Spark SQL集成使用
  10. 【华为云技术分享】ARMv8-A存储模型概述(1)