每一个用户都不喜欢进入页面时需要长时间的等待,并且对着一个空白的页面。
因此在 iOS 当中会使用大量的动效、情感化设计来引导用户多停留一些时间等待加载;在较多 App 当中,也会通过动效设计,优化页面信息的加载。
那既然页面加载很重要,对于 B 端产品而言,我们也需要去考虑页面的功能究竟要如何进行设计。
今天我们会聊聊 页面加载 功能的具体逻辑,以及 B 端产品的常见页面加载策略,希望能够对各位同学有所帮助~
一、页面加载的逻辑
在系统当中,页面加载其实是用户对系统界面进行交互后,系统会将对应的数据传给服务器,而服务器又会将内容反馈给用户的整个过程。
比如在按钮组件中,我们就需要去设定「当用户点击了按钮过后它需要长时间加载的 Loading 状态」
通过这样的做法,其实就是缓解用户等待所花费的时间,减少焦虑。
在很多 C 端产品中,页面加载是非常常见的。比如会有懒加载、预加载、异步加载等。
同时会使用非常多的 插画设计、动效设计 去降低用户所使用的焦虑。但是在桌面端中,它的思考方式会有些许不同,我们将其分为四种不同的方式。
二、骨架图/skeleton
骨架屏是较为常规的页面模块加载方式。
它主要适用于模块当中,加载内容需要提供占位信息时进行使用。通常会在 列表、卡片类 图文信息较多的页面当中进行呈现 。
在用户预期上,骨架图能够帮助我们展示当中页面的大体结构,以避免在页面加载信息的过程当中出现随意跳动、乱展示的情况。
特别是在很多页面第一次加载时,由于数据内容较多,因此使用骨架图填充会更为合理。比如在有赞当中, 就会使用骨架图的方式来进行页面信息的加载。而在 B 端后台中也更多的适用于工作台信息的加载,特别是在工作台中有数据部分的内容呈现的时候,需要格外去注意。
三、加载中/Spin
Spin 主要要于页面和区块当中的信息加载,通过适当的动效,能够保证页面加载时缓解用户的焦虑。
在 Spin 当中,会有许多不同的类型:基础 Loading、动画 Loading、进度 Loading
基础 Loading 更适用于页面当中的组件类级别的加载,像是在输入框内、按钮中、下拉选择... 的内容加载。
动画 Loading 则偏向于区块、页面级别的加载,比如在表格页面中,就会经常使用加载的方式展示目前正在相应。
进度 Loading 则更像是进度条的外露,想要更凸显目前的真实进度情况。目前在 Ant Design 5.18.0 版本当中即可支持
四、长时间加载
当然,在系统当中还会出现一些特殊的加载状态。比如在针对数据量较大的情况下时,我们会采取什么样的加载策略?
比如在神策数据当中,当我们在去分析后台的行为数据时,需要进行大量的计算,因此在分析完一次过后所等待的时间也会更为长久。这时候神策会给出一套更为复杂的加载策略。
首先在加载层面上,它会优先告知用户目前整体的加载进度,这对于用户的等待是非常有益的。
其次,如果你对于整体加载的时间进度不够满意,那我可以给你相应的解决策略,像是分批加载等等。
最后如果你在加载过程当中有其他的分析任务,也可以通过异步加载的方式,进行后台计算,等结果出来后会通过通知的方式进行提示。当然,在此过程中,你可以中断、退出。
五、异步加载
异步加载也是针对长时间加载的一种策略,比如我需要去上传较大信息的时候,我需要耗费特别多的时间。那这时候就可以采用异步加载的方式,满足用户的正常使用。
在飞书当中,我要上传飞书妙记,我要导入飞书成员,那都可以通过异步加载的方式来进行呈现。
那在设计的时候需要去考虑异步加载整体的入口以及功能之间是如何实现的。
像是在飞书妙记中,它会将其作为一个上传入口,进行快速的展现。而在导入飞书成员的时候,则会展现是将其放在后台进行加载,等完成过后通过通知的方式来告知用户(与神策相同)
关于加载,其实在设计上还会有很多细节,后续有时间,再和大家分享~
作者:CE青年Youthce
如何减少网页首屏加载压力和时间
网友上网都不喜欢用太多的时间等待网页的打开,等待的越长,用户可能会直接关闭网页,这样就会损失很多流量!其次,关键字的排名与网页的打开速度也有关系,这个主要体现搜索引擎对用户体验度上,用户体验度好,排名相对其它网站就好些。 因此我觉得我们有必要去提高网页的打开速度,这个不需要太多的成本投入,只需要平时多注意一些小技巧就行了!下面给出20种方法帮你提高网站访问速度缩短网页加载时间。 1、减少页面HTTP请求数量比较直接的理解就是要减少调用其他页面、文件的数量。 A/html/rfc2397。 2、使用CDN(Content Delivery Network)网络加速现在国内做CDN加速业务的公司很多,简单讲,就是将你的图片、视频扩散到CDN网络所能到达之处,让用户访问时能就近下载到这些文件,从而达到网络提速的目的,这样做,同时能减轻你自己网站的负载。 3、添加文件过期或缓存头对于同一用户频繁访问的图片、Js脚本文件等可以在Apache或Nginx设置其缓冲时间,例如设置24小时过期时间,这样用户在访问过该页面之后再次访问时,同一组图片或JS不会再重复下载,从而减少了HTTP请求,用户访问速度明显有所提升,同时服务器负载也会下降。 下面给出nginx配置中缓存控制的例子:4、服务器开启gzip压缩这个大家都比较了解,即将需要传输的内容压缩后传输到客户端再解压,这样在网络上传输的数据量会大幅减小。 通常在服务器上的Apache、Nginx可以直接开启这个设置,也可以从代码角度直接设置传输文件头,增加gzip的设置,也可以从负载均衡设备直接设置。 不过需要留意的是,这个设置会略微增加服务器的负担。 5、css格式定义放置在文件头部这项设置对于用户端是慢速网络或网页内容比较庞大的情况比较有利,可以在网页逐步呈现的同时仍会保持格式信息,不影响网页美感。 6、Javascript脚本放在文件末尾很多Javascript脚本执行效率低下,或者有的第3方域名脚本出现意外无法载入,如果将这些脚本放置到页面比较靠前的位置,可能会导致我们自己网站的内容载入速度下降甚至无法正常加载,所以一般将这些脚本放置在网页文件末尾,一定要放置在前面的脚本要改用所谓的“后载入”方式加载,在主体网页加载完成后再加载,防止其影响到主体网页的加载速度。 7、避免使用CSS脚本(CSS Expressions)有时为了要css的参数动态改变,可能会采用cssexpression来实现,但这样做得不偿失,会使用户端浏览器负担明显加重,所以不建议这样做,如果需要改变,可以使用Javascript脚本去实现。 8、css、javascript改由外部调用如果css、js内容比较庞大,尽量不要写到同1个页面中去,改由外部载入比较妥当,因为浏览器本身会对css、js文件进行缓存。 9、压缩Javascript、CSS代码一般js、css文件中存在大量的空格、换行、注释,这些利于阅读,如果能够压缩掉,将会很有利于网络传输。 这方面的工具也有很多,一般可以保留开发版本,利用工具生成生产版本,2个文件比较,一般压缩率能达到50%以上,减少的数据量还是比较可观的。 我这个博客刚改版完成,各种代码还没有进行优化和压缩,目前yslow评级只能达到D,等有时间进行部分优化,达到C等级应该问题不大。 10、避免采用301、302转向11、养成良好的开发维护习惯,尽量避免脚本重复调用12、配置ETags13、Ajax采用缓存调用这个的使用可以参照Discuz论坛代码,里面对于大量使用的Ajax调用都采用了缓存 调用方式,一般采用附加特征参数方式实现,注意其中的就是特征参数,这个参数不变化就使用缓存文件,如果发生变化则重新下载新文件或更新信 息。 14、合理使用Flush用户端发送浏览请求后,服务器端一般要花销200-500ms去处理这些请求,在此期间,用户端浏览器处于等待状态,如果要减少用户等待时间,可以在适当的位置使用flush,将已经就绪的内容推送到用户端,这在php中很容易实现例如:15、Ajax调用尽量采用GET方法调用实际使用XMLHttpRequest时,如果使用POST方法实现,会发生2次HTTP请求,而使用GET方法只会发生1次HTTP请求。 如果改用GET方法,HTTP请求减少50%!16、尽可能减少DCOM元素这个很好理解,就是尽可能减少网页中各种<>元素数量,例如的冗余很严重,而我们完全可以用取代之。 17、使用多域名负载网页内的多个文件、图片记得有资料说明,IE在网页载入过程中,在同1时刻,对同1域名并行加的HTTP请求数量最高为2个,如果网页需要加载的文件数量超过2个(通常远远超过..),要加快网页访问速度,最好将文件分布到多个域名,例如19楼,其js文件采用独立的域名,据说网络的图片服务器数量在20台以上。 18、缩减iframe的使用,如无必要,尽量不要使用iframe通常用于不同域名内容的加载,这同时也可能因iframe内容加载速度影响到主网页加载速度,如果可能,把需要加载的内容抓取到本地直接嵌入。 如果实在需要iframe加载,采用后载入方式实现。 19、优化图片文件优化图片文件,减小其尺寸,特别是缩略图,一定要按尺寸生成缩略图然后调用,不要在网页中用resize方法实现,虽然这样看到的图片外形笑了,但是其加载的数据量一点也没减少。 曾经见过有人在网页中加载的缩略图,其真实尺寸有10M之巨…普通图像、icon也要尽可能压缩后,可以采用web图像保存、减少颜色数等等方法实现。 20、当页面内容庞大到一定程度,可以采用分页的方式展现,或者taobao的那种翻页后载入方式。
怎么样做网页。
要领一:确定网站主题做网站,首先必须要解决的就是网站内容问题,即确定网站的主题。 美国《个人电脑》杂志(PC Magazine)评出了99年度排名前100位的全美知名网站的十类题材:第1类:网上求职;第2类:网上聊天/即时信息/ICQ;第3类:网上社区/讨论/邮件列表;第4类:计算机技术;第5类:网页/网站开发;第6类:娱乐网站;第7类:旅行;第8类:参考/资讯;第9类:家庭/教育;第10类:生活/时尚。 我们可以参看上面的分类,继续细分。 如果自己在某些方面有兴趣,或掌握的资料较多,也可以做一个自己感兴趣的东西,一者,你可以有自己的见解,做出自己的特色;二者,在制作网站时不会觉得无聊或者力不从心。 兴趣是制作网站的动力,没有创作热情,很难设计制作出优秀的作品。 对于内容主题的选择,要做到小而精,主题定位要小,内容要精。 不要去试图制作一个包罗万象的站点,这往往会失去网站的特色,也会带来高强度的劳动,给网站的及时更新带来困难。 记住:在互联网上只有第一,没有第二!要领二:选择好域名域名是网站在互联网上的名字。 一个非产品推销的纯信息服务网站,其所有建设的价值,都凝结在其网站域名之上。 失去这个域名,所有前期工作就将柯淇铡?br>目前,做个人网站的很多都依赖免费个人空间,其域名也是依赖免费域名指向,如网易的虚拟域名服务,其实这对个人网站的推广与发展很为不利,不光是它“适时”开启的窗口妨碍了浏览者的视线和好感,让人一看就知道是个人网站,而且也妨碍了网页的传输速度。 所以,就我个人观点来说,首先花点钱去注册一个域名,独立的域名就是个人网站的第一笔财富,要把域名起得形象、简单、易记。 要领三:掌握建网工具网络技术的发展带动了软件业的发展,所以用于制作Web页面的工具软件也越来越丰富。 从最基本的HTML编辑器到现在非常流行的Flash互动网页制作工具,各种各样的Web页面制作工具,下面是几款具有代表性的网页制作器:(1)HTML编辑器。 虽然HTML代码复杂,编辑和调试要花费大量的时间,但因HTML的稳定性、广泛支持性及可创建复杂的页面效果,仍受高级网页制作人员的青睐。 就目前来说,有众多的编辑器供选择,这些编辑器广泛支持复杂页面创建及高级HTML规范,使用较为普遍的有Hotdog等专业HTML编辑器。 (2)所见即所得的网页编辑器。 其中以Microsoft Frontpage为代表,它具有如Word一样的操作界面,熟知Word功能的操作者,只要稍加培训就能轻松编制网页。 而且,Frontpage还能解析网页的HTML源代码,并提供了预览支持。 但Frontpage的一些特殊显示功能并不能在其它非IE浏览器下实现。 所以Frontpage是一款非常适合初、中级网页制作人员使用的工具软件。 (3)现在非常流行的 Macromedia公司出品的Flash互动网页制作工具。 这是是一款功能非常强大的交互式矢量多媒体网页制作工具。 能够轻松输出各种各样的动画网页,它不需要特别繁杂的操作,也比JAVA小巧精悍!但它的动画效果、互动效果、多媒体效果十分出色。 而且还可以在Flash动画中封装Mp3音乐、填写表单等;并且由于Flash编制的网页文件比普通网页文件要小得多,所以大大加快了浏览速度。 这是一款十分适合动态Web制作的工具。 另外,个人网站制作者还需了解W3C的HTML4.0规范、CSS层叠样式表的基本知识、javascript、VBScript的基本知识。 对于常用的一些脚本程序如ASP、CGI、PHP也要有适当了解,还要熟练使用图形处理工具和动画制作工具以及矢量绘图工具,并能部分了解多种图形图像动画工具的基本用法,熟练使用FTP工具以及拥有相应的软硬件和网络知识也是必备的。 当然,互联网还是一个免费的资料库。 编制网页需要多种多样的按钮、背景还有各种各样图形、图片。 如果这些都要靠自己完成,既浪费时间又浪费金钱,而且还需要强大的图形、图片制作技术。 所以,为了省却这些麻烦,网站制作者完全可以从网上下载各种精美实用的图片、按钮、背景等网页素材。 要领四:确定网站界面界面就是网站给浏览者的第一印象,往往决定着网站的可看性,在确定网站的界面时要注意以下三点:①栏目与板块编排构建一个网站就好比写一篇论文,首先要列出题纲,才能主题明确、层次清晰。 网站建设初学者,最容易犯的错误就是:确定题材后立刻开始制作,没有进行合理规划。 从而导致网站结构不清晰,目录庞杂混乱,板块编排混乱等。 结果不但浏览者看得糊里糊涂,制作者自己在扩充和维护网站也相当困难。 所以,我们在动手制作网页前,一定要考虑好栏目和板块的编排问题。 网站的题材确定后,就要将收集到的资料内容作一个合理的编排。 比如,将一些最吸引人的内容放在最突出的位置或者在版面分布上占优势地位。 栏目的实质是一个网站的大纲索引,索引应该将网站的主体明确显示出来。 在制定栏目的时候,要仔细考虑,合理安排。 在栏目编排时需要注意的是:●尽可能删除那些与主题无关的栏目;●尽可能将网站内最有价值的内容列在栏目上;●尽可能从访问者角度来编排栏目以方便访问者的浏览和查询;辅助内容,如站点简介、版权信息、个人信息等大可不必放在主栏目里,以免冲淡主题。 另外,板块的编排设置也要合理安排与划分。 板块比栏目的概念要大一些,每个板块都有自己的栏目。 举个例子:ENET硅谷动力( )的站点分新闻、产品、游戏、学院等板块,每个板块下面又各有自己的主栏目。 一般来说,个人站点内容较少,只要分个栏目也就够了,不需要设置板块。 如果有必要设置板块的,应该注意:●各板块要有相对独立性;●各板块要有相互关联;●各板块的内容要围绕站点主题;②目录结构与链接结构网站的目录是指建立网站时创建的目录。 例如:在用Frontpage建立网站时都默认建立了根目录和Images子目录。 目录的结构是一个容易忽略的问题,大多数站长都是未经规划,随意创建子目录。 目录结构的好坏,对浏览者来说并没有什么太大的感觉,但是对于站点本身的维护,以后内容的扩充和移植有着重要的影响。 所以建立目录结构时也要仔细安排,比如:●不要将所有文件都存放在根目录下。 有网站制作者为了方便,将所有文件都放在根目录下。 这样就很容易造成:文件管理混乱,搞不清哪些文件需要编辑和更新,哪些无用的文件可以删除,哪些是相关联的文件,影响工作效率;上传速度变慢,服务器一般都会为根目录建立一个文件索引,如果将所有文件都放在根目录下,那么即使只上传更新一个文件,服务器也需要将所有文件再检索一遍,建立新的索引文件,很明显,文件量越大,等待的时间也将越长。 ●按栏目内容建立子目录。 子目录的建立,首先按主栏目建立。 友情连接内容较多,需要经常更新的可以建立独立的子目录。 而一些相关性强,不需要经常更新的栏目,例如:网站简介、站长情况等可以合并放在一个统一目录下。 所有程序一般都存放在特定目录,例如:CGI程序放在cgi-bin目录,所有提供下载的内容也最好放在一个目录下,便于维护管理。 ●在每个主目录下都建立独立的Images目录。 一般来说,一个站点根目录下都有一个默认地Images目录。 将所有图片都存放在这个目录里很是不方便,比如在栏目删除时,图片的管理相当麻烦。 所以为每个主栏目建立一个独立的Images目录是方便管理的。 原因很简单,就是方便维护与管理。 其它需要注意的还有:目录的层次不要太深,不要超过3层;不要使用中文目录,使用中文目录可能对网址的正确显示造成困难;不要使用过长的目录,太长的目录名不便于记忆;尽量使用意义明确的目录,以便于记忆和管理。 网站的链接结构是指页面之间相互链接的拓扑结构。 它建立在目录结构基础之上,但可以跨越目录。 形象的说:每个页面都是一个固定点,链接则是在两个固定点之间的连线。 一个点可以和一个点连接,也可以和多个点连接。 更重要的是,这些点并不是分布在一个平面上,而是存在于一个立体的空间中。 一般的,建立网站的链接结构有两种基本方式:●树状链接结构(一对一),这类似DOS的目录结构,首页链接指向一级页面,一级页面链接指向二级页面。 这样的链接结构浏览时,一级级进入,一级级退出,条理比较清晰,访问者明确知道自己在什么位置,不会“不知身在何处”,但是浏览效率低,一个栏目下的子页面到另一个栏目下的子页面,必须回到首页再进行。 ●星状链接结构(一对多),类似网络服务器的链接,每个页面相互之间都建立有链接。 这样浏览比较方便,随时可以到达自己喜欢的页面。 但是由于链接太多,容易使浏览者迷路,搞不清自己在什么位置,看了多少内容。 因此,在实际的网站设计中,总是将这两种结构混合起来使用。 网站希望浏览者既可以方便快速地达到自己需要的页面,又可以清晰地知道自己的位置。 所以,最好的办法是:首页和一级页面之间用星状链接结构,一级和二级页面之间用树状链接结构。 关于链接结构的设计,在实际的网页制作中是非常重要一环,采用什么样的链接结构直接影响到版面的布局。
谁会制作网页(制作一个个人主页的网站)内容如下,帮朋友弄的
去下载现成网站管理系统来改很容易的,比如pageadmin系统、 shopex系统、 wordpress系统、discuz系统这些都很方便