图片加载装置及方法_2

文档序号:9235295阅读:来源:国知局
0027]请求模块120适于在第一判断模块110确定需要向服务端请求下载图片时,向服务端请求下载图片。
[0028]例如,当网页中的图片在浏览器的当前显示界面上的停留时间大于所述预定阈值时,第一判断模块110确定向服务端请求下载图片。这时,请求模块120可以向服务端请求下载当前显示界面中显示的图片。
[0029]可选地,请求模块120也可以向服务端请求下载当前显示界面中显示的图片以及即将在当前显示界面中显示的下一屏的图片。由于用户在浏览网页时会向下或向上滚动网页,采用这种方式可以提前请求接下来要在浏览器当前显示界面上要显示的图片,而不是当这些图片出现在浏览器的当前显示界面时再向服务端请求下载图片,这样,可以进一步提高浏览器显示网页的图片的速度。
[0030]加载模块130适于接收从服务端下载的图片并将其加载至浏览器。当请求模块120向服务端20请求下载图片时,服务端20会根据请求模块120的请求向客户端10传送相应的图片,这时,加载模块130会接收从服务端20传送过来的图片,并将其加载至浏览器进行显示。当请求模块120向服务端20请求下载浏览器当前显示界面显示的图片以及下一屏将在浏览器当前界面显示的图片时,服务端20会根据请求模块120的请求,将当前显示界面显示的图片以及下一屏将在浏览器当前界面显示的图片传送至加载模块130,这时加载模块130会将当前屏的图片以及下一屏的图片均加载至浏览器进行显示。
[0031]另外,可选地,当请求模块120向服务端20请求下载图片时,为了使用户在浏览图片时尽快看到图片,而不用等待很长时间,服务端20可以分别截取所述图片的多种尺寸的缩略图,这里缩略图的尺寸通常依据分辨率的大小而从原图截取得到,分辨率低的缩略图尺寸小。这里不限定截取多少个缩略图,其可以根据需要来确定。然后,服务端20将不同尺寸的缩略图从小尺寸到大尺寸分批传送至客户端10,缩略图尺寸越小,网络数据越小,传输至客户端的速度越快,例如,一个约IKB的图,可以瞬间传输至客户端。这样加载模块130可以很快地先将尺寸相对小的缩略图加载至浏览器并显示,而当加载模块130加载尺寸相对小的缩略图的同时,服务端20在向客户端传送尺寸相对大的缩略图,这样,加载模块130在加载完尺寸相对小的缩略图之后,可以马上加载尺寸相对大的缩略图,尺寸相对大的缩略图会比尺寸相对小缩略图分辨率高,看上去更清晰,这样以此类推,最终将图片的原图显示在浏览器上。例如,在典型环境下,如果服务端从小到大截取三种不同尺寸的缩略图(暂且称为小尺寸缩略图、中尺寸缩略图、大尺寸缩略图),小尺寸缩略图一般少于0.1秒即可在客户端处看到,更清晰的中尺寸缩略图和大尺寸缩略图可以依次分别需0.2秒和0.5秒在客户端显示,原图通常需要1.0秒显示于客户端。通过这种方式,在客户端,用户会看到图片逐渐清晰地显示在浏览器上,提高用户体验。
[0032]前面以服务端截取小尺寸缩略图、中尺寸缩略图、大尺寸缩略图三种尺寸为例进行了说明,但是,服务端截取的缩略图数量并不限于三种尺寸,其可以截取更多尺寸的缩略图,使缩略图的尺寸划分得更细。不过,缩略图截取越多,服务端所做的处理会越多,会占用服务器端的资源,影响其运行速度。具体地,截取多少不同尺寸的缩略图,可以根据需要预先设定,这里对此不做限定。
[0033]另外,本发明的图片加载装置100还可以包括第二判断模块140和取消加载模块150。第二判断模块140适于判断当前屏是否滚动离开当前显示界面。取消加载模块150适于在第二判断模块140判断当前屏滚动离开当前显示界面时,取消从服务端20对当前屏及下一屏图片的下载以及取消加载模块130向浏览器加载当前屏及下一屏的图片。
[0034]通常,用户对网页的浏览有两种情形,第一种情形是想要查看显示在当前显示界面上的内容,包括图片。第二种情形是并不想查看显示在当前显示界面上的内容,只是快速经过而已,或者在查看显示在当前显示界面上的部分内容后即滚动离开当前屏。对于第一种情形,通常是请求模块120从服务端20请求下载在当前显示界面上要显示的当前屏的图片以及即将在当前显示界面上要显示的下一屏的图片。加载模块130将下载的图片加载至浏览器,用户在显示界面上看到图片后,才会进行滚动操作使当前屏图片离开当前显示界面。而对于第二种情形,用户在查看了当前屏的部分或全部图片后,并不想一屏屏仔细查看每一屏的图片,所以在查看某一屏图片后,为了纵观一下整个网页的内容,用户可能会快速滚动网页,然后可能随机在某一屏暂停一会儿而查看一下,然后再快速滚动网页。当用户快速滚动网页但并不旨在查看进入当前显示界面的图片时,通常网页滚动比较快。这时,第二判断模块140判断当前屏图片滚动离开当前显示界面,如果这时在当前显示界面只加载了当前屏的部分图片,则取消加载模块150取消对该当前屏中的其它尚未加载图片的加载,对于正在下载或加载的下一屏图片,则取消下载或加载。
[0035]例如,当用户在查看首页后马上进行快速滚动页面、或者在快速滚动过程中随机地暂停在某一屏而进行查看然后又快速滚动页面时,实际上用户只想查看首页或暂停所在的那一屏的图片。在这种情况下,用户并不会查看下一屏的图片,但实际情况如前面所述却是当用户查看当前屏的图片时,下一屏的图片已被请求下载或者正在被加载,这时,取消加载模块150可以取消对下一屏中的图片的下载和其在浏览器上的加载。这样可以减少向服务器的请求、下载图片以及在浏览器上的图片加载,从而减少与服务端的交互、减少对CPU资源的占用,提高浏览器的运行速度。
[0036]另外,当用户在当前显示界面查看当前屏的部分图片后,马上使当前屏离开当前显示界面并且快速滚动页面时,取消加载模块150不仅可以取消对下一屏图片的下载或加载,也可以取消对当前屏中未被加载的图片的下载或加载。
[0037]根据本发明的另一方面,还提供一种图片加载方法。图2示出了根据本发明的一种实施方式的图片加载方法的流程图。
[0038]如图2所示,本发明的图片加载方法200起始于步骤S210,在步骤S210,判断是否需要向服务端请求下载图片。具体地,可以根据图片在当前显示界面的停留时间判断是否向服务端请求下载图片。根据实践经验,为图片在当前显示界面的停留时间设置一个预定阈值,当图片在当前显示界面的停留时间大于所述预定阈值时,表明该图片在当前显示界面停留时间比较长,用户想要查看该图片,这时,确定向服务端请求下载图片,则进入步骤S230,向服务端请求下载图片。当图片在当前显示界面的停留时间小于等于所述预定阈值时,表明该图片在当前显示界面停留时间比较短,判断客户只是快速滚动页面,并不想查看该图片,这时,确定不向服务端请求下载图片,则进入步骤S220,不向服务端请求下载图片。当在步骤S230执行向服务端请求下载图片的操作时,为了提高网页中的图片在浏览器中的显示速度,可以请求下载在浏览器当前显示界面上要显示的当前屏和下一屏上的图片,也可以请求下载在浏览器当前显示界面上要显示的当前屏和下两屏上的图片。本发明并不限定同时请求下载几屏图片。
[0039]前面所述的预定阈值,主要根据经验进行确定,例如设置为I秒钟。S卩,当该图片在当前显示界面停留大于I秒钟时,确定用户想要浏览该图片,则从服务器下载该图片的缩略图。优选地,为了使用户在浏览图片时尽快看到图片,而不用等待很长时间,服务端可以截取多种尺寸的缩略图,并将该多种尺寸的缩略图分成几组,所述预定阈值也可以设定多个,例如第一预定阈值、第二预定阈值(第二预定阈值大于第一预定阈值)等,根据图片在当前显示界面停留时间的长短来确定从服务端请求下载不同组的图片。当设定多个预定阈值时,则多次执行步骤S210和步骤S230。例如,
当前第2页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1