`
kongxiantao
  • 浏览: 112969 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

用户体验--速度

阅读更多

原文地址:http://www.aliued.cn/?p=1646&cpage=1#comment-2118

 

本人喜欢看F1,迷恋那种风驰电掣的感觉,今日恰逢Webplayer项目一期的发布,看邮件似乎大家对新的hover展示效果反响还不错,呵呵。这里只是结合这个东西谈一下对于”提高页面加载速度”上的看法。

如 果从前端技术来看这次一期的项目,最大的改变或许就应该是ajax实现无刷新提取offer的这个操作了。做这个ajax通信的时候,首先想到了一点,那 就是”请求–响应“的这个过程中offer应该以什么样的效果来展现?什么都不管让用户有一个等待的过程?或是像大多数ajax的做法一样加载一张 loading……的图片(实施上绝大多数的ajax操作都 是这样的,在网上你可以找出一大堆的loading效果图)。实现的原理图如下:

aliaa1.png
但是我相信大多数有着很强目的性的阿里巴巴用户都不会喜欢频繁地在detail页面上看到这 loading……图片,虽然按普通的网速它可能出现不到1秒钟的时间。于是我对这个加载过程做了一定的处理。

在原先的页面上预先加载了三组图片。这里姑且称为A,B,C,而当前展示的是B组。A和C组是隐藏的,不可见。如同所示:

ali.png
当点击”下一组“按钮的时候,把B组的内容加载到A中,把C组的内容加载到B中,同时利用ajax请求从后台调取新的输入填入C组中。相信用户在正 常情况下点击”下一组“按钮都会有一定的时间去浏览新展示出来的内容,而页面正是在这段事件把数据从后台请求过来。点击”上一组“情况与此类似。这个可以 在很大程度上减少乃至避免点”下一组“按钮后的等待过程。

当然这个做法同时也会带来另一个问题,就是在第一次加载页面的时候会多加载2组 (A和C)offer的内容。如果用户不产生点击”上一组“或是”下一组“的行为,那么这2组的内容就是完全多余的。对于这点,我采用了一个相对来说比较 折中的办法。把A和C的内容全部放到页面最后去加载。避免页面加载到offer展现这一块是的拥塞。对于用户来说几乎感觉不到着两个隐藏容器的加载时间。 当然,现在也可以利用我在FDev(目前正在开发的一个轻量级javascript框架)中刚完成的domReady 的方法在Dom树加载完毕后去添加进 来。 (切忌不要用window.onload的,它必须等待所有的图片加载完毕 后才触发,好慢!!)

qq.png

当然这个做法会带来另外一个问题,就是B组加载完毕而A和C组还没加载的时候用户点击”上一组“和”下一组“怎么处理,不做处理的话 肯定是会报错的,怎么办?禁用?个人认为禁用也是一个不错的方案,理由有二个方面:第一,从用户的行为上看,点开一张offer总需要有一定的浏览时间再 去切换上一组或是下一组吧,毕竟只有极少数的有效用户会去疯点”上一组“和”下一组的按钮“;第二,从detail的结构上看,在加载可切换的offer 后几乎是马上到了页面最下面,这之间所需的时间并不长,以公司的网上甚至根本感觉不出来。但是更负责地看,我们也不排除有些网速极慢的用户的等待情况。于 是我做了一个简单的处理,在点击”上一组“和”下一组“的按钮后如果发现所需的A组和C组还不存在,则延时0.2秒后继续请求,最多产生2秒(10次)的 请求,如果点击后2秒后A和C还没有加载完毕,则本次请求无效。当然为什么是2秒,我没有数据,没有参考,大抵可以说是拍脑袋想出来的,因为点击后2秒还 没反应我觉得总是有问题的啦 ,呵呵,希望有高手看看这个这个时间是否合理。

发完这篇文章后,估计很多人都会觉得对于这屁大的问题写篇文章或是有小题大作之嫌,要知道在F1里任何的细节都有可能导致完全不同的结果!。在这里再举几个互联网上对更细节的东西看起来更加变态的方法:

1、Google的预加载:
gg.png

这是张什么图片?google的首页,下面是用firebug查看的他加载的内容。注意显示出来的这张图片。我们发现Google的首页根本没有用 到这张图片,这是list页面所需要用到的图片。明白了吧。一般人上Google绝不是欣赏下Google首页长什么样子,他必定会进入搜索环节。对于 Google,他的list页面肯定比首页大得多,于是在首页的时候就把list所需用到的图片给预先加载了,并作缓存,到list页面后就不需要从网上 重新下载了!尽管这张图片也只有7k。

2、yahoo的按需加载:
ya.png

以前写过一篇文章[suggest项目总结-用户体验篇 ] 曾经谈到yahoo的的suggest功能,只是当时并不知道yahoo的所做的精心处理。他处理suggest功能的js以及现实效果的css只有在用 户点击了输入框之后才会去加载,(因为只输一个字母就去搜索的用户毕竟是少数,而且这时候的sugguest也很难匹配)如果用户在首页不产生搜索行为, 他的这段suggest功能的js和css也就多余了,不会去做加载。而他们的大小分是2k和13K。与此同时,下一个将出现的页面(list)上的图片 也开始提前加载进来了。

3、yahoo的分块加载:

yyy.png

还是yahoo,在右上角的那个切换的tip(我们中文站也有)。当你在页面的DOM结构还没有加载完毕的时候去触发你会发现鼠标移动上去是没有切 换效果的。yahoo认为首先要把网站上最重要的内容加载出来。于是,这段切换的效果也是在Dom数加载完毕后才动态添加进来的。这样可以尽可能地加快页 面显示速度

……

最后再和大家分享两个数据:

Google: 慢500ms = 20%将放弃访问;

Amazon:慢100ms = 1% 将放弃交易;

 

分享到:
评论

相关推荐

    产品设计与用户体验--马化腾

    【产品设计与用户体验的核心理念】 马化腾,作为腾讯公司的创始人之一,对于产品设计和用户体验有着深入的理解。他的观点和实践经验对于IT行业的界面设计师来说,无疑是宝贵的指导。马化腾强调,优秀的产品设计应以...

    产品设计与用户体验--马化腾.ppt39页

    【产品设计与用户体验】是IT领域中至关重要的概念,它涉及到如何从用户的角度出发,创造出易用、高效且能满足用户需求的产品。马化腾的分享深入探讨了这一主题,主要涵盖了以下几个方面: 1. **从案例谈产品设计与...

    用户体验的要素-某公司的PPT转为PDF

    性能和速度对于提供良好的用户体验至关重要。用户通常不愿意等待缓慢加载的页面或应用程序。因此,优化加载时间是必要的: - **优化资源**:减小文件大小、压缩图像等手段来加速加载速度。 - **缓存策略**:合理利用...

    我爱架构系列-面向用户体验的电商平台技术架构

    ### 我爱架构系列-面向用户体验的电商平台技术架构 #### 技术栈演进与用户体验优化 在电子商务领域,用户体验的优化是确保平台能够长期稳定发展的重要因素之一。本文将围绕“面向用户体验的电商平台技术架构”这一...

    腾讯--产品设计与用户体验

    【腾讯--产品设计与用户体验】主要探讨了腾讯在产品设计中的关键原则和策略,强调了用户体验的重要性。以下是对这些知识点的详细阐述: 1. **口碑相传的产品设计之道**:腾讯认为,优秀的产品体验是建立口碑的基础...

    用户体验之最新的分析

    【用户体验之最新的分析】 在当前快速发展的软件行业中,用户体验已经成为衡量产品优劣的重要标准。用户不再仅仅关注功能是否完备,而是更加追求使用过程中的愉悦感和满意度。对于IT公司而言,提升用户体验不仅可以...

    Google 的用户体验设计原则

    ### Google的用户体验设计原则 在当今数字化时代,用户体验(UX)设计成为了衡量产品成功与否的重要标准之一。作为全球领先的科技公司之一,Google始终坚持以人为本的设计理念,不断探索和实践着一套独特的用户体验...

    google谷歌网站优化培训-用户体验和SEO.pptx

    * 网站反应速度:网站的反应速度对用户体验和SEO效果非常重要,反应速度过慢可能会导致用户流失和搜索引擎排名下降。 * 网站下载速度:网站的下载速度对用户体验和SEO效果也非常重要,下载速度过慢可能会导致用户...

    Google移动App用户体验准则

    ### Google移动App用户体验准则 #### 一、概览 Google发布的《移动App用户体验准则》旨在为智能手机应用程序(非平板电脑应用程序)提供一套完整的转化优化框架。该文档详细定义了评估智能手机应用时需考虑的关键...

    基于用户体验的手机营业厅APP界面对比分析.pdf

    - **性能优化**:提升APP的加载速度和稳定性,减少卡顿现象,确保流畅的用户体验。 - **客户服务**:完善在线客服系统,提供即时帮助,解决用户在使用过程中的疑问或问题。 4. 结论 用户体验是评价手机营业厅...

    SEO培训PPT课件:网站用户体验

    ### SEO培训PPT课件:网站用户体验 #### 一、网站用户体验的概念与作用 ##### 1.1 客户体验定义 - **客户体验**,或称**用户体验**,是指用户在使用产品或服务过程中产生的主观感受。这些感受涵盖了用户在操作习惯...

    移动端IM开发如何拥有SaaS级体验-杨威.zip

    本文将深入探讨如何在移动端开发IM时,实现SaaS(Software as a Service)级别的用户体验,由专家杨威为我们带来专业的见解。我们将从以下几个关键点进行讨论: 1. **性能优化** - **消息推送**:为了实现即时通讯...

    如何提升网站的用户体验

    用户体验(User Experience,简称UE)是用户在使用产品过程中建立起来的一种纯主观感受。随着Web技术的发展,用户体验已成为网络系统设计中的重要概念。Donald Norman博士首先提出了“用户体验”一词,他是一位认知...

    腾讯产品设计与用户体验

    - **核心能力与速度**:产品设计过程中强调提升产品的核心竞争力与运行速度,确保用户体验流畅。 - **交互与视觉**:注重交互设计的细节处理及视觉呈现的简洁美观。 - **高端用户关注度**:重视高端用户(意见领袖)...

    酷死轻巧浏览器--非一般速度--Beta1

    当我们谈论速度和效率时,酷死轻巧浏览器--非一般速度--Beta1无疑是一款值得关注的创新产品。这款由Xzhang开发的浏览器,不仅是速度的代名词,更是简洁与实用的完美结合。 首先,酷死轻巧浏览器的“非一般速度”...

    以日常生活说APP用户体验.pdf

    - **技术优化**:确保APP的稳定性和速度,减少技术问题影响用户体验。 - **界面美观**:使用符合美学标准的设计,提高用户的审美体验。 以上是关于APP用户体验的一些核心知识点,虽然实际内容并没有依据您提供的...

    如何提高网站的用户体验_Phpwind访谈.doc

    【提高网站用户体验的关键要素】 网站用户体验(User Experience, UX)是指用户与网站交互时的感受和满意度,它是衡量网站成功与否的重要标准。白鸦在访谈中深入讨论了如何提升网站用户体验,以下是他分享的一些...

Global site tag (gtag.js) - Google Analytics