在用户终端浏览器上按需显示图片的方法及装置 技术领域 本发明涉及通信技术领域, 尤其涉及一种在用户终端浏览器上按需显示图片的方 法及装置。
背景技术 WEB 页是为适合 PC 屏幕设计的, 通过手机上网浏览 WEB 页时屏幕上通常在某一时 刻只能显示屏幕区域内的一部分区域, 其他区域则要通过移动滚动条后才能显示。
在手机浏览器打开 WEB 页的过程中, 受制于无线网络的速度, 文件下载占用了大 部分时间, 尤其是图片下载占用了下载过程的大部分时间 ; 而现有手机上显示 WEB 页时采 用的是一次性排版后再显示的方法, 即手机首先 HTML 文本以及图片全部下载下来, 排版形 成完整的页面后再计算页面的可视区域并显示, 这样, 如果用户只想看 WEB 页的一部分区 域, 也不得不同时将其他区域的图片同时下载下来, 从而造成下载时间的延长以及数据流 量的浪费。
发明内容 鉴于上述的分析, 本发明旨在提供一种在用户终端浏览器上按需显示图片的方法 及装置, 用于解决传统浏览器采用一次性排版后显示所带来的下载时间延长以及数据流量 浪费的问题。
本发明的目的主要是通过以下技术方案实现的 :
本发明提供了一种在用户终端浏览器上按需显示图片的方法, 包括 :
步骤 A : 当用户终端通过浏览器访问网页时, 浏览器对接收到的 HTML 文本进行解 析, 并根据解析结果以默认图片的方式对该网页进行排版 ;
步骤 B : 计算该网页的可视区域并获取该可视区域内的控件 ;
步骤 C : 在判定可视区域的控件中包含有图像控件并且所有图像控件都获得相应 的图片后, 绘制可视区域。
进一步地, 还包括 :
在该网页发生移动后, 重新执行步骤 B 和步骤 C。
进一步地, 所述步骤 C 具体包括 :
判断该可视区域内是否存在图像控件, 如果是, 对该可视区域内存在的图像控件 获取相应的图片, 加入该图片并对该网页重新进行排版, 直到该可视区域内存在的所有图 像控件都获得相应的图片后绘制可视区域 ; 如果否, 直接绘制可视区域。
本发明还提供了一种在用户终端浏览器上按需显示图片的装置, 包括 :
解析模块, 用于当用户终端通过浏览器访问网页时, 对接收到的 HTML 文本进行解 析, 并根据解析结果以默认图片的方式对该网页进行排版 ;
计算获取模块, 用于计算该网页的可视区域并获取该可视区域内的控件 ;
判断绘制模块, 用于在判定可视区域的控件中包含有图像控件并且所有图像控件
都获得相应的图片后, 绘制可视区域。
进一步地, 所述判断绘制模块具体用于, 判断该可视区域内是否存在图像控件, 如 果是, 对该可视区域内存在的图像控件获取相应的图片, 加入该图片并对该网页重新进行 排版, 直到该可视区域内存在的所有图像控件都获得相应的图片后绘制可视区域 ; 如果否, 直接绘制可视区域。
本发明有益效果如下 :
在用户只想看 WEB 页的一部分区域时, 本发明通过只下载屏幕范围内的 WEB 页图 片, 减少了等待 WEB 页显示的时间以及数据流量消耗。
本发明的其他特征和优点将在随后的说明书中阐述, 并且, 部分的从说明书中变 得显而易见, 或者通过实施本发明而了解。本发明的目的和其他优点可通过在所写的说明 书、 权利要求书、 以及附图中所特别指出的结构来实现和获得。 附图说明
图 1 为本发明实施例所述方法的流程示意图 ;
图 2 为本发明实施例所述装置的流程示意图。 具体实施方式 下面结合附图来具体描述本发明的优选实施例, 其中, 附图构成本申请一部分, 并 与本发明的实施例一起用于阐释本发明的原理。
首先结合附图 1 对本发明实施例所述方法进行详细说明。
为了有助于理解本发明实施例, 这里先简单介绍下现有技术中 WEB 页的形成原理 以及手机上显示显示 WEB 页的原理。
网页形成的原理是, 浏览器解析 HTML 文本, 形成若干控件和容器。控件用来显示 内容, 例如文本控件显示文字, 图像控件显示图片。控件放置在容器内, 由容器来计算各个 控件的显示位置, 即容器是用来控制排版的。 浏览器若要显示某图片, 必须要从图像控件中 获取图片 URL, 向该图片 URL 发出 HTTP 请求, 将图片下载回来, 然后解码, 解码后的内容写入 图像控件。在图片还没有获取到的情况下, 图像控件显示为默认图片 ( 默认图片为排版时 需要给其设定的特殊标识图片, 例如可以为 “×” 形状的图片, 这类图片占用的数据流量非 常小, 可以忽略不计 )。
手机屏幕上显示网页的原理是, 浏览器设置屏幕左上角点在网页上的绝对坐标, 然后根据屏幕的长度和宽度计算出可视区域坐标。 页面容器将各个控件坐标与可视区域坐 标进行比较, 让处于可视区域内的控件绘制自身, 从而将可视区域内的网页内容显示给用 户。 当浏览器收到页面移动的信息后, 会重新设置屏幕左上角点在网页上的坐标, 从而重新 计算可视区域。
如图 1 所示, 图 1 为本发明实施例所述方法的流程示意图, 具体包括 :
步骤 101 : 在手机上网浏览 WEB 页时, 浏览器向服务器发出 HTTP 请求, 请求由 URL 指定的 WEB 页对应的 HTML 文本 ; 其中, HTML 文本中包括了整个 WEB 页的布局和文字内容, 但不包括图片内容 ; 图片信息是通过 HTML 中的 img 标签中来描述, img 标签中指定了的图 片 URL, 即 img 标签告诉浏览器从哪里可以获取图片 ;
步骤 102 : 浏览器对接收到的 HTML 文本进行解析, 然后根据解析结果按照不显示 图片的方式对 WEB 页进行排版 ; 也就是说, 对 HTML 解析形成若干控件和容器, 然后由容器来 计算各个控件的显示位置, 但是对于其中的图像控件的下载标识设置为未下载, 这样排版 后生成的 WEB 页并不包含图像控件对应的图片 ;
步骤 103 : 计算页面的可视区域, 获取可视区域内的控件 ;
步骤 104 : 判断该可视区域内控件中是否包含有图像控件, 如果包含, 则执行步骤 106, 否则执行步骤 105 ;
步骤 105 : 在屏幕绘制该可视区域, 即浏览器设置屏幕左上角点在 WEB 页上的绝对 坐标, 然后根据屏幕的长度和宽度计算出该可视区域坐标 ;
步骤 106 : 根据可视区域内图像控件的下载标志判断各个图像控件是否都已取得 相应的图片, 若至少有一个未获取, 则执行步骤 107 ; 若都已获取到相应的图片, 则转到步 骤 105 ;
步骤 107 : 浏览器请求下载上述未获取的图片, 下载后将该图片的内容写入到对 应的图像控件, 并将对应的图像控件的下载标识设置为已下载 ;
步骤 108 : 加入该图片并对该 WEB 页重新进行排版, 然后转到步骤 104, 直到该可视 区域内的所有图像控件都获取到相应的图片。
下面用一个具体的场景说明按需显示图片的过程, 这个场景是某用户到新浪网上 浏览英超联赛的新闻。
1. 用户首先输入手机浏览器上输入 www.sina.com.cn, 打开新浪首页, 这时显示 在手机屏幕上的是 WEB 页左上角的一小块区域, 此时浏览器只下载了这一小块区域内的图 片, 而 WEB 页右部和下部的图片都没有被下载。
2. 用户按右方向键移动 WEB 页, 在 WEB 页的导航区域中寻找到 “英超” 链接。在这 个过程中, WEB 页上部的一部分图片逐渐进入屏幕范围, 这些图片在 WEB 页移动的过程中被 下载并显示出来。但 WEB 页下部的图片仍然不会被下载。
3. 用户点击 “英超” 链接, 浏览器打开英超联赛板块首页, 如果该用户只是在该页 面的上部浏览一些英超重要新闻, 则页面中部和下部的图片在用户浏览过程中始终不会下 载。
从上面的过程可以看出, 用户在浏览 WEB 页过程中, 完全地获得了他感兴趣的部 分 (WEB 页上部的内容 ), 而大部分该用户不关心的 WEB 页图片 (WEB 页下部的图片 ) 都没有 下载, 这样, 那些用户不需要的图片就不会占用用户的下载时间和流量。
接下来结合附图 2 对本发明实施例所述装置进行详细说明。
如图 2 所示, 图 2 为本发明实施例所述装置的结构示意图, 具体可以包括 : 解析模 块、 计算获取模块和判断绘制模块, 其中,
解析模块, 当用户终端通过浏览器访问网页时, 解析模块对接收到的 HTML 文本进 行解析, 并根据解析结果以默认图片的方式对该网页进行排版 ;
计算获取模块, 负责计算该网页的可视区域并获取该可视区域内的控件 ;
判断绘制模块, 负责在判定可视区域的控件中包含有图像控件并且所有图像控件 都获得相应的图片后, 绘制可视区域 ; 具体的说就是, 判断绘制模块判断该可视区域内是否 存在图像控件, 如果是, 对该可视区域内存在的图像控件获取相应的图片, 加入该图片并对该网页重新进行排版, 直到该可视区域内存在的所有图像控件都获得相应的图片后绘制可 视区域 ; 如果否, 直接绘制可视区域。
对于本发明实施例所述装置的具体实施过程, 由于上述方法中已有详细说明, 故 此处不再赘述。
综述, 本发明实施提供了一种在用户终端浏览器上按需显示图片的方法及装置, 以上仅以手机为例进行了说明, 但本领域技术人员都应该知道, 本发明实施例同样可以适 用于其他具有访问 WEB 页功能且不能全屏显示 WEB 页的其他用户终端, 原理相同。
本发明实施例的浏览器只下载屏幕范围内的 WEB 页图片, 若用户只浏览了 WEB 页 的一部分, 等待 WEB 页显示的时间和消耗的数据流量都比传统的方式少得多 ; 并且随着 WEB 页的移动, 落到屏幕范围内的图片会自动下载和显示, 整个过程不需要用户干预。
以上所述, 仅为本发明较佳的具体实施方式, 但本发明的保护范围并不局限于此, 任何熟悉本技术领域的技术人员在本发明揭露的技术范围内, 可轻易想到的变化或替换, 都应涵盖在本发明的保护范围之内。因此, 本发明的保护范围应该以权利要求书的保护范 围为准。