一种控制页面内容更新的方法及装置转让专利

申请号 : CN201610105258.7

文献号 : CN105787036B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 熊正祥

申请人 : 广州神马移动信息科技有限公司

摘要 :

本发明提供一种控制页面内容更新的方法及装置。该方法包括:当检测到动态网页元素的数据更新被触发时,判断预设的中断更新条件是否满足;预设的中断更新条件为:动态网页元素不在可视区内;或者动态网页元素在可视区内且当前页面中存在处于显示状态的浮层;若预设的中断更新条件不满足,对动态网页元素数据更新;否则不对动态网页元素数据更新。预设的中断更新条件还可为动态网页元素在可视区内,且存在处于显示状态的浮层且浮层对动态网页元素的遮挡满足预设的遮挡条件。本发明在动态网页元素不在可视区,或当前页面中存在正显示的浮层,或浮层对动态网页元素形成遮挡时,不更新动态网页元素,节省用户数据流量,且减小页面性能负载。

权利要求 :

1.一种控制页面内容更新的方法,其特征在于,所述方法包括:

当检测到针对当前页面中的动态网页元素的数据更新操作被触发时,判断预设的中断更新条件是否满足;其中,所述预设的中断更新条件包括:所述动态网页元素在当前页面的可视区内,且所述当前页面中存在处于显示状态的浮层且所述浮层对所述动态网页元素的遮挡满足预设的遮挡条件,其中,所述预设的遮挡条件包括:处于显示状态的浮层对所述动态网页元素的遮挡比例超过预设阈值;

若所述预设的中断更新条件不满足,则对所述动态网页元素进行数据更新;否则,不对所述动态网页元素进行数据更新。

2.根据权利要求1所述的方法,其特征在于,所述方法还包括:

实时监听滚动条拖动事件、浏览器窗口大小改变事件或浮层关闭事件;

当监听到滚动条拖动事件、浏览器窗口大小改变事件或浮层关闭事件时,重新判断所述预设的中断更新条件是否满足。

3.根据权利要求1所述的方法,其特征在于,所述方法还包括:

当确定所述动态网页元素在所述可视区内时,遍历所述当前页面中每个浮层的显示属性,确定所述当前页面中是否存在处于显示状态的浮层;

当确定存在处于显示状态的浮层时,根据所述动态网页元素在所述当前页面中的位置及所述处于显示状态的浮层在所述当前页面中的位置,确定处于显示状态的浮层对所述动态网页元素的遮挡是否满足预设的遮挡条件;

当确定满足所述预设的遮挡条件时,判断预设的中断更新条件满足。

4.根据权利要求3所述的方法,其特征在于,所述预设的遮挡条件包括:处于显示状态的浮层对所述动态网页元素的遮挡比例超过预设阈值;

所述确定处于显示状态的浮层对所述动态网页元素的遮挡是否满足预设的遮挡条件,包括:根据所述动态网页元素在所述当前页面中的位置及所述处于显示状态的浮层在所述当前页面中的位置,获取所述处于显示状态的浮层对所述动态网页元素的遮挡面积;

根据所述遮挡面积和所述动态网页元素的总面积,计算所述处于显示状态的浮层对所述动态网页元素的遮挡比例;

当所述遮挡比例超过预设阈值时,确定所述处于显示状态的浮层对所述动态网页元素的遮挡满足预设的遮挡条件。

5.根据权利要求3所述的方法,其特征在于,所述预设的遮挡条件包括:处于显示状态的浮层遮挡了所述动态网页元素中的特定区域;

所述确定处于显示状态的浮层对所述动态网页元素的遮挡是否满足预设的遮挡条件,包括:获取所述动态网页元素中特定区域在所述当前页面中的位置;

根据所述特定区域在所述当前页面中的位置及所述处于显示状态的浮层在所述当前页面中的位置,确定所述处于显示状态的浮层是否遮挡了所述特定区域;

当确定所述处于显示状态的浮层遮挡了所述特定区域时,确定处于显示状态的浮层对所述动态网页元素的遮挡满足预设的遮挡条件。

6.根据权利要求3所述的方法,其特征在于,所述动态网页元素在当前页面中的位置包括所述动态网页元素的高度和宽度、所述动态网页元素顶部与所述当前页面顶部之间的距离、所述动态网页元素的左边与所述当前页面的左边之间的距离;

所述可视区在当前页面中的位置包括屏幕的高度和宽度、屏幕顶部与所述当前页面顶部之间的距离、屏幕左边与所述当前页面的左边之间的距离;

所述确定所述动态网页元素在所述可视区内,包括:

计算所述动态网页元素顶部与所述当前页面顶部之间的距离和所述动态网页元素的高度之间的第一和值,及计算所述屏幕顶部与所述当前页面顶部之间的距离和屏幕的高度之间的第二和值;

计算所述动态网页元素的左边与所述当前页面的左边之间的距离和所述动态网页元素的宽度之间的第三和值,及计算所述屏幕左边与所述当前页面的左边之间的距离和屏幕的宽度之间的第四和值;

当所述第一和值小于所述第二和值且大于所述屏幕顶部与所述当前页面顶部之间的距离,且所述第三和值小于所述第四和值且大于所述屏幕左边与所述当前页面的左边之间的距离时,确定所述动态网页元素位于所述可视区内。

7.一种控制页面内容更新的装置,其特征在于,所述装置包括:

判断模块,用于当检测到针对当前页面中的动态网页元素的数据更新操作被触发时,判断预设的中断更新条件是否满足;其中,所述预设的中断更新条件包括:所述动态网页元素在当前页面的可视区内,且所述当前页面中存在处于显示状态的浮层且所述浮层对所述动态网页元素的遮挡满足预设的遮挡条件,其中,所述预设的遮挡条件包括:处于显示状态的浮层对所述动态网页元素的遮挡比例超过预设阈值;

控制更新模块,用于若所述预设的中断更新条件不满足,则对所述动态网页元素进行数据更新;否则,不对所述动态网页元素进行数据更新。

8.根据权利要求7所述的装置,其特征在于,所述装置还包括:

监听模块,用于实时监听滚动条拖动事件、浏览器窗口大小改变事件或浮层关闭事件;

当监听到滚动条拖动事件、浏览器窗口大小改变事件或浮层关闭事件时,重新判断所述预设的中断更新条件是否满足。

9.根据权利要求7所述的装置,其特征在于,所述装置还包括:

遍历单元,用于当确定所述动态网页元素在所述可视区内时,遍历所述当前页面中每个浮层的显示属性,确定所述当前页面中是否存在处于显示状态的浮层;

第二确定单元,用于当确定存在处于显示状态的浮层时,根据所述动态网页元素在所述当前页面中的位置及所述处于显示状态的浮层在所述当前页面中的位置,确定处于显示状态的浮层对所述动态网页元素的遮挡是否满足预设的遮挡条件;

第二判断单元,用于当确定满足所述预设的遮挡条件时,判断预设的中断更新条件满足。

10.根据权利要求9所述的装置,其特征在于,所述第二确定单元包括:第一获取子单元,用于根据所述动态网页元素在所述当前页面中的位置及所述处于显示状态的浮层在所述当前页面中的位置,获取所述处于显示状态的浮层对所述动态网页元素的遮挡面积;

第一计算子单元,用于根据所述遮挡面积和所述动态网页元素的总面积,计算所述处于显示状态的浮层对所述动态网页元素的遮挡比例;

第一确定子单元,用于当所述遮挡比例超过预设阈值时,确定所述处于显示状态的浮层对所述动态网页元素的遮挡满足预设的遮挡条件。

11.根据权利要求9所述的装置,其特征在于,所述预设的遮挡条件包括:处于显示状态的浮层遮挡了所述动态网页元素中的特定区域;所述第二确定单元包括:第二获取子单元,用于获取所述动态网页元素中特定区域在所述当前页面中的位置;

第二确定子单元,用于根据所述特定区域在所述当前页面中的位置及所述处于显示状态的浮层在所述当前页面中的位置,确定所述处于显示状态的浮层是否遮挡了所述特定区域;

第三确定子单元,用于当确定所述处于显示状态的浮层遮挡了所述特定区域时,确定处于显示状态的浮层对所述动态网页元素的遮挡满足预设的遮挡条件。

12.根据权利要求9所述的装置,其特征在于,所述动态网页元素在当前页面中的位置包括所述动态网页元素的高度和宽度、所述动态网页元素顶部与所述当前页面顶部之间的距离、所述动态网页元素的左边与所述当前页面的左边之间的距离;

所述可视区在当前页面中的位置包括屏幕的高度和宽度、屏幕顶部与所述当前页面顶部之间的距离、屏幕左边与所述当前页面的左边之间的距离;

所述遍历单元,包括:

第二计算子单元,用于计算所述动态网页元素顶部与所述当前页面顶部之间的距离和所述动态网页元素的高度之间的第一和值,及计算所述屏幕顶部与所述当前页面顶部之间的距离和屏幕的高度之间的第二和值;

第三计算子单元,用于计算所述动态网页元素的左边与所述当前页面的左边之间的距离和所述动态网页元素的宽度之间的第三和值,及计算所述屏幕左边与所述当前页面的左边之间的距离和屏幕的宽度之间的第四和值;

第四确定子单元,用于当所述第一和值小于所述第二和值且大于所述屏幕顶部与所述当前页面顶部之间的距离,且所述第三和值小于所述第四和值且大于所述屏幕左边与所述当前页面的左边之间的距离时,确定所述动态网页元素位于所述可视区内。

13.一种控制页面内容更新的装置,其特征在于,所述装置包括处理器,存储器,总线和通信接口,所述处理器、通信接口和存储器通过所述总线连接;

所述存储器用于存储程序;

所述处理器,用于通过所述总线调用存储在所述存储器中的程序,执行所述权利要求

1-6任一所述方法。

说明书 :

一种控制页面内容更新的方法及装置

技术领域

[0001] 本发明涉及互联网通信领域,具体而言,涉及一种控制页面内容更新的方法及装置。

背景技术

[0002] 网页中经常包含需定时刷新数据的网页元素,为了便于说明,本发明将需定时刷新数据的网页元素称为动态网页元素。例如,网页中显示股市行情的图片及直播体育赛况的视频都是动态网页元素。
[0003] 当用户通过浏览器客户端浏览网页时,浏览器客户端每隔预设时间段从服务器拉取动态网页元素对应的数据,并将拉取的数据渲染到动态网页元素对应的显示区域中。另外,网页中通常包含用于显示广告信息的浮层,浮层在显示时会对网页中的动态网页元素的显示造成不利影响,此时用户无法看到动态网页元素显示的内容。且当动态网页元素不在当前网页的可视区时用户也无法看到动态网页元素显示的内容。
[0004] 但相关技术中,当动态网页元素不在当前网页的可视区内,或存在正在显示的浮层,或显示的浮层对动态网页元素造成遮挡等不利影响时,仍会从服务器拉取动态网页元素对应的数据并渲染这些数据,浪费用户的数据流量,且增加浏览器客户端的页面性能负载。

发明内容

[0005] 有鉴于此,本发明实施例的目的在于提供一种控制页面内容更新的方法及装置,以节省用户的数据流量,减小浏览器客户端的页面性能负载。
[0006] 第一方面,本发明实施例提供了一种控制页面内容更新的方法,所述方法包括:
[0007] 当检测到针对当前页面中的动态网页元素的数据更新操作被触发时,判断预设的中断更新条件是否满足;其中,所述预设的中断更新条件包括:所述动态网页元素不在当前页面的可视区内;或者,所述动态网页元素在当前页面的可视区内,且所述当前页面中存在处于显示状态的浮层;
[0008] 若所述预设的中断更新条件不满足,则对所述动态网页元素进行数据更新;否则,不对所述动态网页元素进行数据更新。
[0009] 结合第一方面,本发明实施例提供了上述第一方面的第一种可能的实现方式,其中,所述判断预设的中断更新条件是否满足,包括:
[0010] 获取所述动态网页元素在所述当前页面中的位置及所述可视区在所述当前页面中的位置;
[0011] 根据所述动态网页元素在所述当前页面中的位置和所述可视区在所述当前页面中的位置,确定所述动态网页元素是否在所述可视区内;
[0012] 当确定所述动态网页元素不在所述可视区内时,判断预设的中断更新条件满足。
[0013] 结合第一方面的第一种可能的实现方式,本发明实施例提供了上述第一方面的第二种可能的实现方式,其中,所述方法还包括:
[0014] 当确定所述动态网页元素在所述可视区内时,遍历所述当前页面中每个浮层的显示属性,确定所述当前页面中是否存在处于显示状态的浮层;
[0015] 当确定存在处于显示状态的浮层时,判断所述预设的中断更新条件满足。
[0016] 结合第一方面,本发明实施例提供了上述第一方面的第三种可能的实现方式,其中,所述方法还包括:
[0017] 实时监听滚动条拖动事件、浏览器窗口大小改变事件或浮层关闭事件;
[0018] 当监听到滚动条拖动事件、浏览器窗口大小改变事件或浮层关闭事件时,重新判断所述预设的中断更新条件是否满足。
[0019] 第二方面,本发明实施例提供了一种控制页面内容更新的方法,所述方法包括:
[0020] 当检测到针对当前页面中的动态网页元素的数据更新操作被触发时,判断预设的中断更新条件是否满足;其中,所述预设的中断更新条件包括:所述动态网页元素不在当前页面的可视区内;或者,所述动态网页元素在当前页面的可视区内,且所述当前页面中存在处于显示状态的浮层且所述浮层对所述动态网页元素的遮挡满足预设的遮挡条件;
[0021] 若所述预设的中断更新条件不满足,则对所述动态网页元素进行数据更新;否则,不对所述动态网页元素进行数据更新。
[0022] 结合第二方面,本发明实施例提供了上述第二方面的第一种可能的实现方式,其中,所述判断预设的中断更新条件是否满足,包括:
[0023] 获取所述动态网页元素在所述当前页面中的位置及所述可视区在所述当前页面中的位置;
[0024] 根据所述动态网页元素在所述当前页面中的位置和所述可视区在所述当前页面中的位置,确定所述动态网页元素是否在所述可视区内;
[0025] 当确定所述动态网页元素不在所述可视区内时,判断所述预设的中断更新条件满足。
[0026] 结合第二方面的第一种可能的实现方式,本发明实施例提供了上述第二方面的第二种可能的实现方式,其中,所述方法还包括:
[0027] 当确定所述动态网页元素在所述可视区内时,遍历所述当前页面中每个浮层的显示属性,确定所述当前页面中是否存在处于显示状态的浮层;
[0028] 当确定存在处于显示状态的浮层时,根据所述动态网页元素在所述当前页面中的位置及所述处于显示状态的浮层在所述当前页面中的位置,确定处于显示状态的浮层对所述动态网页元素的遮挡是否满足预设的遮挡条件;
[0029] 当确定满足所述预设的遮挡条件时,判断预设的中断更新条件满足。
[0030] 结合第二方面的第二种可能的实现方式,本发明实施例提供了上述第二方面的第三种可能的实现方式,其中,所述预设的遮挡条件包括:处于显示状态的浮层对所述动态网页元素的遮挡比例超过预设阈值;
[0031] 所述确定处于显示状态的浮层对所述动态网页元素的遮挡是否满足预设的遮挡条件,包括:
[0032] 根据所述动态网页元素在所述当前页面中的位置及所述处于显示状态的浮层在所述当前页面中的位置,获取所述处于显示状态的浮层对所述动态网页元素的遮挡面积;
[0033] 根据所述遮挡面积和所述动态网页元素的总面积,计算所述处于显示状态的浮层对所述动态网页元素的遮挡比例;
[0034] 当所述遮挡比例超过预设阈值时,确定所述处于显示状态的浮层对所述动态网页元素的遮挡满足预设的遮挡条件。
[0035] 结合第二方面的第二种可能的实现方式,本发明实施例提供了上述第二方面的第四种可能的实现方式,其中,所述预设的遮挡条件包括:处于显示状态的浮层遮挡了所述动态网页元素中的特定区域;
[0036] 所述确定处于显示状态的浮层对所述动态网页元素的遮挡是否满足预设的遮挡条件,包括:
[0037] 获取所述动态网页元素中特定区域在所述当前页面中的位置;
[0038] 根据所述特定区域在所述当前页面中的位置及所述处于显示状态的浮层在所述当前页面中的位置,确定所述处于显示状态的浮层是否遮挡了所述特定区域;
[0039] 当确定所述处于显示状态的浮层遮挡了所述特定区域时,确定处于显示状态的浮层对所述动态网页元素的遮挡满足预设的遮挡条件。
[0040] 结合第二方面,本发明实施例提供了上述第二方面的第五种可能的实现方式,其中,所述方法还包括:
[0041] 实时监听滚动条拖动事件、浏览器窗口大小改变事件或浮层关闭事件;
[0042] 当监听到滚动条拖动事件、浏览器窗口大小改变事件或浮层关闭事件时,重新判断所述预设的中断更新条件是否满足。
[0043] 结合第二方面的第一种可能的实现方式,本发明实施例提供了上述第二方面的第六种可能的实现方式,其中,所述动态网页元素在当前页面中的位置包括所述动态网页元素的高度和宽度、所述动态网页元素顶部与所述当前页面顶部之间的距离、所述动态网页元素的左边与所述当前页面的左边之间的距离;
[0044] 所述可视区在当前页面中的位置包括屏幕的高度和宽度、屏幕顶部与所述当前页面顶部之间的距离、屏幕左边与所述当前页面的左边之间的距离;
[0045] 所述根据所述动态网页元素在所述当前页面中的位置和所述可视区在所述当前页面中的位置,确定所述动态网页元素是否位于所述可视区内,包括:
[0046] 计算所述动态网页元素顶部与所述当前页面顶部之间的距离和所述动态网页元素的高度之间的第一和值,及计算所述屏幕顶部与所述当前页面顶部之间的距离和屏幕的高度之间的第二和值;
[0047] 计算所述动态网页元素的左边与所述当前页面的左边之间的距离和所述动态网页元素的宽度之间的第三和值,及计算所述屏幕左边与所述当前页面的左边之间的距离和屏幕的宽度之间的第四和值;
[0048] 当所述第一和值小于所述第二和值且大于所述屏幕顶部与所述当前页面顶部之间的距离,且所述第三和值小于所述第四和值且大于所述屏幕左边与所述当前页面的左边之间的距离时,确定所述动态网页元素位于所述可视区内。
[0049] 第三方面,本发明实施例提供了一种控制页面内容更新的装置,所述装置包括:
[0050] 判断模块,用于当检测到针对当前页面中的动态网页元素的数据更新操作被触发时,判断预设的中断更新条件是否满足;其中,所述预设的中断更新条件包括:所述动态网页元素不在当前页面的可视区内;或者,所述动态网页元素在当前页面的可视区内,且所述当前页面中存在处于显示状态的浮层;
[0051] 控制更新模块,用于若所述预设的中断更新条件不满足,则对所述动态网页元素进行数据更新;否则,不对所述动态网页元素进行数据更新。
[0052] 结合第三方面,本发明实施例提供了上述第三方面的第一种可能的实现方式,其中,所述判断模块包括:
[0053] 获取单元,用于获取所述动态网页元素在所述当前页面中的位置及所述可视区在所述当前页面中的位置;
[0054] 确定单元,用于根据所述动态网页元素在所述当前页面中的位置和所述可视区在所述当前页面中的位置,确定所述动态网页元素是否在所述可视区内;
[0055] 第一判断单元,用于当确定所述动态网页元素不在所述可视区内时,判断预设的中断更新条件满足。
[0056] 结合第三方面的第一种可能的实现方式,本发明实施例提供了上述第三方面的第二种可能的实现方式,其中,所述判断模块还包括:
[0057] 遍历单元,用于当确定所述动态网页元素在所述可视区内时,遍历所述当前页面中每个浮层的显示属性,确定所述当前页面中是否存在处于显示状态的浮层;
[0058] 第二判断单元,用于当确定存在处于显示状态的浮层时,判断所述预设的中断更新条件满足。
[0059] 结合第三方面,本发明实施例提供了上述第三方面的第三种可能的实现方式,其中,所述装置还包括:
[0060] 监听模块,用于实时监听滚动条拖动事件、浏览器窗口大小改变事件或浮层关闭事件;当监听到滚动条拖动事件、浏览器窗口大小改变事件或浮层关闭事件时,重新判断所述预设的中断更新条件是否满足。
[0061] 第四方面,本发明实施例提供了一种控制页面内容更新的装置,所述装置包括:
[0062] 判断模块,用于当检测到针对当前页面中的动态网页元素的数据更新操作被触发时,判断预设的中断更新条件是否满足;其中,所述预设的中断更新条件包括:所述动态网页元素不在当前页面的可视区内;或者,所述动态网页元素在当前页面的可视区内,且所述当前页面中存在处于显示状态的浮层且所述浮层对所述动态网页元素的遮挡满足预设的遮挡条件;
[0063] 控制更新模块,用于若所述预设的中断更新条件不满足,则对所述动态网页元素进行数据更新;否则,不对所述动态网页元素进行数据更新。
[0064] 结合第四方面,本发明实施例提供了上述第四方面的第一种可能的实现方式,其中,所述判断模块包括:
[0065] 获取单元,用于获取所述动态网页元素在所述当前页面中的位置及所述可视区在所述当前页面中的位置;
[0066] 第一确定单元,用于根据所述动态网页元素在所述当前页面中的位置和所述可视区在所述当前页面中的位置,确定所述动态网页元素是否在所述可视区内;
[0067] 第一判断单元,用于当确定所述动态网页元素不在所述可视区内时,判断所述预设的中断更新条件满足。
[0068] 结合第四方面的第一种可能的实现方式,本发明实施例提供了上述第四方面的第二种可能的实现方式,其中,所述装置还包括:
[0069] 遍历单元,用于当确定所述动态网页元素在所述可视区内时,遍历所述当前页面中每个浮层的显示属性,确定所述当前页面中是否存在处于显示状态的浮层;
[0070] 第二确定单元,用于当确定存在处于显示状态的浮层时,根据所述动态网页元素在所述当前页面中的位置及所述处于显示状态的浮层在所述当前页面中的位置,确定处于显示状态的浮层对所述动态网页元素的遮挡是否满足预设的遮挡条件;
[0071] 第二判断单元,用于当确定满足所述预设的遮挡条件时,判断预设的中断更新条件满足。
[0072] 结合第四方面的第二种可能的实现方式,本发明实施例提供了上述第四方面的第三种可能的实现方式,其中,所述预设的遮挡条件包括:处于显示状态的浮层对所述动态网页元素的遮挡比例超过预设阈值;所述第二确定单元包括:
[0073] 第一获取子单元,用于根据所述动态网页元素在所述当前页面中的位置及所述处于显示状态的浮层在所述当前页面中的位置,获取所述处于显示状态的浮层对所述动态网页元素的遮挡面积;
[0074] 第一计算子单元,用于根据所述遮挡面积和所述动态网页元素的总面积,计算所述处于显示状态的浮层对所述动态网页元素的遮挡比例;
[0075] 第一确定子单元,用于当所述遮挡比例超过预设阈值时,确定所述处于显示状态的浮层对所述动态网页元素的遮挡满足预设的遮挡条件。
[0076] 结合第四方面第二种可能的实现方式,本发明实施例提供了上述第四方面的第四种可能的实现方式,其中,所述预设的遮挡条件包括:处于显示状态的浮层遮挡了所述动态网页元素中的特定区域;所述第二确定单元包括:
[0077] 第二获取子单元,用于获取所述动态网页元素中特定区域在所述当前页面中的位置;
[0078] 第二确定子单元,用于根据所述特定区域在所述当前页面中的位置及所述处于显示状态的浮层在所述当前页面中的位置,确定所述处于显示状态的浮层是否遮挡了所述特定区域;
[0079] 第三确定子单元,用于当确定所述处于显示状态的浮层遮挡了所述特定区域时,确定处于显示状态的浮层对所述动态网页元素的遮挡满足预设的遮挡条件。
[0080] 结合第四方面,本发明实施例提供了上述第四方面的第五种可能的实现方式,其中,所述装置还包括:
[0081] 监听模块,用于实时监听滚动条拖动事件、浏览器窗口大小改变事件或浮层关闭事件;当监听到滚动条拖动事件、浏览器窗口大小改变事件或浮层关闭事件时,重新判断所述预设的中断更新条件是否满足。
[0082] 结合第四方面的第一种可能的实现方式,本发明实施例提供了上述第四方面的第六种可能的实现方式,其中,所述动态网页元素在当前页面中的位置包括所述动态网页元素的高度和宽度、所述动态网页元素顶部与所述当前页面顶部之间的距离、所述动态网页元素的左边与所述当前页面的左边之间的距离;
[0083] 所述可视区在当前页面中的位置包括屏幕的高度和宽度、屏幕顶部与所述当前页面顶部之间的距离、屏幕左边与所述当前页面的左边之间的距离;所述第一确定单元包括:
[0084] 第二计算子单元,用于计算所述动态网页元素顶部与所述当前页面顶部之间的距离和所述动态网页元素的高度之间的第一和值,及计算所述屏幕顶部与所述当前页面顶部之间的距离和屏幕的高度之间的第二和值;
[0085] 第三计算子单元,用于计算所述动态网页元素的左边与所述当前页面的左边之间的距离和所述动态网页元素的宽度之间的第三和值,及计算所述屏幕左边与所述当前页面的左边之间的距离和屏幕的宽度之间的第四和值;
[0086] 第四确定子单元,用于当所述第一和值小于所述第二和值且大于所述屏幕顶部与所述当前页面顶部之间的距离,且所述第三和值小于所述第四和值且大于所述屏幕左边与所述当前页面的左边之间的距离时,确定所述动态网页元素位于所述可视区内。
[0087] 在本发明实施例提供的方法及装置中,当检测到动态网页元素的数据更新被触发时,判断预设的中断更新条件是否满足;预设的中断更新条件为:动态网页元素不在可视区内;或者动态网页元素在可视区内且当前页面中存在处于显示状态的浮层;若预设的中断更新条件不满足,对动态网页元素数据更新;否则不对动态网页元素数据更新。预设的中断更新条件还可为动态网页元素在可视区内,且存在处于显示状态的浮层且浮层对动态网页元素的遮挡满足预设的遮挡条件。本发明在动态网页元素不在可视区,或当前页面中存在正显示的浮层,或浮层对动态网页元素形成遮挡时,不更新动态网页元素,节省用户数据流量,且减小页面性能负载。
[0088] 为使本发明的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。

附图说明

[0089] 为了更清楚地说明本发明实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本发明的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
[0090] 图1示出了本发明实施例1所提供的一种控制页面更新的方法流程图;
[0091] 图2示出了本发明实施例2所提供的一种控制页面更新的方法流程图;
[0092] 图3示出了本发明实施例3所提供的一种控制页面更新的装置结构示意图;
[0093] 图4示出了本发明实施例4所提供的一种控制页面更新的装置结构示意图。

具体实施方式

[0094] 下面将结合本发明实施例中附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本发明实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本发明的实施例的详细描述并非旨在限制要求保护的本发明的范围,而是仅仅表示本发明的选定实施例。基于本发明的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0095] 考虑到相关技术中当动态网页元素不在当前网页的可视区内,或存在正在显示的浮层,或显示的浮层对动态网页元素造成遮挡等不利影响时,仍会从服务器拉取动态网页元素对应的数据并渲染这些数据,浪费用户的数据流量,且增加浏览器客户端的页面性能负载。基于此,本发明实施例提供了一种控制页面内容更新的方法及装置。下面通过实施例进行描述。
[0096] 实施例1
[0097] 本发明实施例提供了一种控制页面内容更新的方法。本发明实施例的执行主体可以为浏览器客户端,浏览器客户端通过本发明实施例提供的方法,在需定时刷新数据的动态网页元素不在当前页面的可视区内,或动态网页元素在可视区内但当前页面中存在处于显示状态的浮层时,不对动态网页元素进行数据更新,即在用户看不到动态网页元素时不对动态网页元素进行数据更新,从而节省用户的数据流量,减小浏览器客户端的页面性能负载。
[0098] 参见图1,该方法具体包括以下步骤:
[0099] 步骤101:当检测到针对当前页面中的动态网页元素的数据更新操作被触发时,判断预设的中断更新条件是否满足;预设的中断更新条件包括:动态网页元素不在当前页面的可视区内;或者,动态网页元素在当前页面的可视区内,且当前页面中存在处于显示状态的浮层。
[0100] 动态网页元素为网页中需定时刷新数据的网页元素,如网页中实时显示股市行情的图片及直播体育赛况的视频都是动态网页元素。动态网页元素的数据更新是周期性进行的,动态网页元素每隔预设时间段进行数据更新,该预设时间段可以为2秒或4秒等。
[0101] 由于网页中通常包含用于显示广告信息的浮层,浮层的显示会对动态网页元素的显示造成不利影响,如对动态网页元素形成遮挡等,如此会对用户浏览动态网页元素的内容造成障碍。另外,由于终端的屏幕大小通常小于网页的大小,所以用户通过终端来浏览网页时,不可能在终端屏幕中同时看到网页的所有内容,在本发明实施例中将通过屏幕能够看到的网页的区域称为可视区,很显然在动态网页元素不在可视区内时,用户无法看到动态网页元素显示的内容。而当用户无法看到动态网页元素显示的内容,或者用户浏览动态网页元素时存在障碍时,若仍更新动态网页元素,则会浪费用户的数据流量,且增加网页的性能负载。
[0102] 为此本发明实施例中设置了预设的中断更新条件,预设的中断更新条件包括:动态网页元素不在当前页面的可视区内;或者,动态网页元素在当前页面的可视区内,且当前页面中存在处于显示状态的浮层。当用户通过浏览器客户端浏览网页时,浏览器客户端获取当前页面中每个动态网页元素对应的更新周期,并根据每个动态网页元素及当前时间,确定当前时间是否触发了动态网页元素的数据更新操作,当检测到针对当前页面中的动态网页元素的数据更新操作被触发时,浏览器客户端判断预设的中断更新条件是否满足。
[0103] 浏览器客户端首先获取被触发的动态网页元素在当前页面中的位置及可视区在当前页面中的位置;根据动态网页元素在当前页面中的位置和可视区在当前页面中的位置,确定动态网页元素是否在可视区内;当确定动态网页元素不在可视区内时,判断预设的中断更新条件满足。
[0104] 在本发明实施例中,动态网页元素在当前页面中的位置包括动态网页元素的高度和宽度、动态网页元素顶部与当前页面顶部之间的距离、动态网页元素的左边与当前页面的左边之间的距离;可视区在当前页面中的位置包括屏幕的高度和宽度、屏幕顶部与当前页面顶部之间的距离、屏幕左边与当前页面的左边之间的距离。浏览器客户端可以通过如下方式来确定动态网页元素是否位于可视区内,包括:
[0105] 计算动态网页元素顶部与当前页面顶部之间的距离和动态网页元素的高度之间的第一和值,及计算屏幕顶部与当前页面顶部之间的距离和屏幕的高度之间的第二和值;计算动态网页元素的左边与当前页面的左边之间的距离和动态网页元素的宽度之间的第三和值,及计算屏幕左边与当前页面的左边之间的距离和屏幕的宽度之间的第四和值;当第一和值小于第二和值且大于屏幕顶部与当前页面顶部之间的距离,且第三和值小于第四和值且大于屏幕左边与当前页面的左边之间的距离时,确定动态网页元素位于可视区内。
[0106] 在本发明实施例中,当确定动态网页元素在可视区内时,可以判断预设的中断更新条件不满足。当然在动态网页元素在可视区内时,也可能由于浮层的影响而导致用户无法看到动态网页元素显示的内容,因此,当确定动态网页元素在可视区内时,还可以进一步通过如下方式来判断预设的中断更新条件是否满足,具体包括:
[0107] 遍历当前页面中每个浮层的显示属性,确定当前页面中是否存在处于显示状态的浮层;当确定存在处于显示状态的浮层时,判断预设的中断更新条件满足。
[0108] 在本发明实施例中,技术人员在编写网页时,可以为网页中的每个浮层添加相同的浮层标识,该浮层标识可以为预设的字符串,并为每个浮层添加显示属性,该显示属性用于指示浮层是否处于显示状态。当浏览器客户端确定动态网页元素在可视区内时,浏览器客户端确定当前页面中具有浮层标识的每个浮层,遍历每个浮层的显示属性,确定是否存在显示属性指示处于显示状态的浮层,若存在则确定当前页面中有正处于显示状态的浮层,此时判断预设的中断更新条件满足。若确定当前页面中没有正处于显示状态的浮层,则判断预设的中断更新条件不满足。
[0109] 步骤102:若预设的中断更新条件不满足,则对动态网页元素进行数据更新;否则,不对动态网页元素进行数据更新。
[0110] 在本发明实施例中只有当上述预设的中断更新条件不满足时,才对动态网页元素进行数据更新,即只有当动态网页元素在当前页面的可视区内,或者动态网页元素的显示不受浮层的影响时,才更新动态网页元素的数据。如此避免在用户看不到动态网页元素时更新,节省了用户的数据的流量,同时减小了浏览器客户端的页面性能负载。
[0111] 在本发明实施例中,当判断预设的中断更新条件满足时,表明此时动态网页元素不在当前页面的可视区内,或者即便在可视区内也受处于显示状态的浮层的影响。但是当用户通过拖动页面的滚动条,或者改变浏览器窗口大小时,均会改变当前页面的可视区内显示的内容,此时原先不在可视区内的动态网页元素很可能进入了可视区内。另外,用户也可以通过点击处于显示状态的浮层的关闭按键来关闭处于显示状态的浮层,以消除处于显示状态的浮层对动态网页元素的影响。即用户的操作很可能改变动态网页元素的状态,因此需要对用户的操作进行实时监测,并重新判断预设的中断更新条件是否满足。
[0112] 在本发明实施例中,实时监听滚动条拖动事件、浏览器窗口大小改变事件或浮层关闭事件;当监听到滚动条拖动事件、浏览器窗口大小改变事件或浮层关闭事件时,重新判断预设的中断更新条件是否满足。
[0113] 上述重新判断预设的终端更新条件是否满足的操作与步骤101的操作相同,在此不再赘述。
[0114] 本发明实施例中,所有浮层具有相同的浮层标识,浏览器客户端可以根据浮层标识确定当前页面中是否包含浮层,并根据浮层的显示属性,来确定当前页面中是否存在处于显示状态的浮层。并在动态网页元素不在当前页面的可视区,或当前页面中存在处于显示状态的浮层时,不对动态网页元素进行数据更新,如此能有效节省数据流量,增加页面性能,同时也可以扩大当前页面对应的网站服务器的承载能力。
[0115] 在本发明实施例中,当检测到动态网页元素的数据更新被触发时,判断预设的中断更新条件是否满足;预设的中断更新条件为:动态网页元素不在可视区内;或者动态网页元素在可视区内且当前页面中存在处于显示状态的浮层;若预设的中断更新条件不满足,对动态网页元素数据更新;否则不对动态网页元素数据更新。本发明在动态网页元素不在可视区,或当前页面中存在正显示的浮层时,不更新动态网页元素,节省用户数据流量,且减小页面性能负载。
[0116] 实施例2
[0117] 本发明实施例提供了一种控制页面内容更新的方法。本发明实施例的执行主体可以为浏览器客户端,浏览器客户端通过本发明实施例提供的方法,在需定时刷新数据的动态网页元素不在当前页面的可视区内,或动态网页元素在可视区内,但当前页面中存在处于显示状态的浮层且浮层对动态网页元素的遮挡符合预设的遮挡条件时,不对动态网页元素进行数据更新,即在用户看不到动态网页元素时不对动态网页元素进行数据更新,从而节省用户的数据流量,减小浏览器客户端的页面性能负载。
[0118] 参见图2,该方法具体包括以下步骤:
[0119] 步骤201:当检测到针对当前页面中的动态网页元素的数据更新操作被触发时,判断预设的中断更新条件是否满足;预设的中断更新条件包括:动态网页元素不在当前页面的可视区内;或者,动态网页元素在当前页面的可视区内,且当前页面中存在处于显示状态的浮层且浮层对动态网页元素的遮挡满足预设的遮挡条件。
[0120] 动态网页元素为网页中需定时刷新数据的网页元素,如网页中实时显示股市行情的图片及直播体育赛况的视频都是动态网页元素。动态网页元素的数据更新是周期性进行的,动态网页元素每隔预设时间段进行数据更新,该预设时间段可以为2秒或4秒等。
[0121] 由于网页中通常包含用于显示广告信息的浮层,浮层的显示会对动态网页元素的显示造成不利影响,如对动态网页元素形成遮挡等,如此会对用户浏览动态网页元素的内容造成障碍。另外,由于终端的屏幕大小通常小于网页的大小,所以用户通过终端来浏览网页时,不可能在终端屏幕中同时看到网页的所有内容,在本发明实施例中将通过屏幕能够看到的网页的区域称为可视区,很显然在动态网页元素不在可视区内时,用户无法看到动态网页元素显示的内容。而当用户无法看到动态网页元素显示的内容,或者浮层对动态网页元素形成遮挡时,若仍更新动态网页元素,则会浪费用户的数据流量,且增加网页的性能负载。
[0122] 为此本发明实施例中设置了预设的中断更新条件,预设的中断更新条件包括:动态网页元素不在当前页面的可视区内;或者,动态网页元素在当前页面的可视区内,且当前页面中存在处于显示状态的浮层且浮层对动态网页元素的遮挡满足预设的遮挡条件。当用户通过浏览器客户端浏览网页时,浏览器客户端获取当前页面中每个动态网页元素对应的更新周期,并根据每个动态网页元素及当前时间,确定当前时间是否触发了动态网页元素的数据更新操作,当检测到针对当前页面中的动态网页元素的数据更新操作被触发时,浏览器客户端判断预设的中断更新条件是否满足。
[0123] 浏览器客户端首先获取被触发的动态网页元素在当前页面中的位置及可视区在当前页面中的位置;根据动态网页元素在当前页面中的位置和可视区在当前页面中的位置,确定动态网页元素是否在可视区内;当确定动态网页元素不在可视区内时,判断预设的中断更新条件满足。
[0124] 在本发明实施例中,动态网页元素在当前页面中的位置包括动态网页元素的高度和宽度、动态网页元素顶部与当前页面顶部之间的距离、动态网页元素的左边与当前页面的左边之间的距离;可视区在当前页面中的位置包括屏幕的高度和宽度、屏幕顶部与当前页面顶部之间的距离、屏幕左边与当前页面的左边之间的距离。浏览器客户端可以通过如下方式来确定动态网页元素是否位于可视区内,包括:
[0125] 计算动态网页元素顶部与当前页面顶部之间的距离和动态网页元素的高度之间的第一和值,及计算屏幕顶部与当前页面顶部之间的距离和屏幕的高度之间的第二和值;计算动态网页元素的左边与当前页面的左边之间的距离和动态网页元素的宽度之间的第三和值,及计算屏幕左边与当前页面的左边之间的距离和屏幕的宽度之间的第四和值;当第一和值小于第二和值且大于屏幕顶部与当前页面顶部之间的距离,且第三和值小于第四和值且大于屏幕左边与当前页面的左边之间的距离时,确定动态网页元素位于可视区内。
[0126] 在本发明实施例中,当确定动态网页元素在可视区内时,可以判断预设的中断更新条件不满足。当然在动态网页元素在可视区内时,也可能由于浮层的遮挡而导致用户无法看到动态网页元素显示的内容,因此,当确定动态网页元素在可视区内时,还可以进一步通过如下方式来判断预设的中断更新条件是否满足,具体包括:
[0127] 当确定动态网页元素在可视区内时,遍历当前页面中每个浮层的显示属性,确定当前页面中是否存在处于显示状态的浮层;当确定存在处于显示状态的浮层时,根据动态网页元素在当前页面中的位置及处于显示状态的浮层在当前页面中的位置,确定处于显示状态的浮层对动态网页元素的遮挡是否满足预设的遮挡条件;当确定满足预设的遮挡条件时,判断预设的中断更新条件满足。
[0128] 在本发明实施例中,技术人员在编写网页时,可以为网页中的每个浮层添加相同的浮层标识,该浮层标识可以为预设的字符串,并为每个浮层添加显示属性,该显示属性用于指示浮层是否处于显示状态。当浏览器客户端确定动态网页元素在可视区内时,浏览器客户端确定当前页面中具有浮层标识的每个浮层,遍历每个浮层的显示属性,确定是否存在显示属性指示处于显示状态的浮层,若存在则进一步确定处于显示状态的浮层对动态网页元素的遮挡是否满足预设的遮挡条件。
[0129] 上述预设的遮挡条件包括:处于显示状态的浮层对动态网页元素的遮挡比例超过预设阈值,或者,处于显示状态的浮层遮挡了动态网页元素中的特定区域。特定区域为用于显示动态网页元素中关键信息的区域,这些关键信息一般为用户着重关注的信息,如在直播体育赛况的视频中显示的比赛比分等。
[0130] 当预设的遮挡条件为处于显示状态的浮层对动态网页元素的遮挡比例超过预设阈值时,通过如下方式来确定是否满足预设的遮挡条件,包括:
[0131] 根据动态网页元素在当前页面中的位置及处于显示状态的浮层在当前页面中的位置,获取处于显示状态的浮层对动态网页元素的遮挡面积;根据遮挡面积和动态网页元素的总面积,计算处于显示状态的浮层对动态网页元素的遮挡比例;当遮挡比例超过预设阈值时,确定处于显示状态的浮层对动态网页元素的遮挡满足预设的遮挡条件。
[0132] 在获取处于显示状态的浮层对动态网页元素的遮挡面积时,首先根据动态网页元素在当前页面中的位置及处于显示状态的浮层在当前页面中的位置,确定处于显示状态的浮层对动态网页元素形成的遮挡区域,然后确定该遮挡区域的面积,该遮挡区域的面积即为上述遮挡面积。计算遮挡面积与动态网页元素的总面积之间的比值,该比值即为处于显示状态的浮层对动态网页元素的遮挡比例。
[0133] 本发明实施例中,当上述遮挡比例超过预设阈值时,确定处于显示状态的浮层对动态网页元素的遮挡满足预设的遮挡条件,并判断预设的中断更新条件满足。如此当动态网页元素被浮层遮挡的面积过大时,可以不对动态网页元素进行更新,以免用户看不到动态网页元素更新的数据,从而造成用户数据流量的浪费。
[0134] 当预设的遮挡条件为处于显示状态的浮层遮挡了动态网页元素中的特定区域时,通过如下方式来确定是否满足预设的遮挡条件,包括:
[0135] 获取动态网页元素中特定区域在当前页面中的位置;根据特定区域在当前页面中的位置及处于显示状态的浮层在当前页面中的位置,确定处于显示状态的浮层是否遮挡了特定区域;当确定处于显示状态的浮层遮挡了特定区域时,确定处于显示状态的浮层对动态网页元素的遮挡满足预设的遮挡条件。
[0136] 本发明实施例中,当动态网页元素中的特定区域被浮层遮挡时,确定处于显示状态的浮层对动态网页元素的遮挡满足预设的遮挡条件,并判断预设的中断更新条件满足。如此当特定区域内的关键信息被遮挡时,可以不对动态网页元素进行更新,以免用户看不到该特定区域内更新的关键数据,从而造成用户数据流量的浪费。
[0137] 步骤202:若预设的中断更新条件不满足,则对动态网页元素进行数据更新;否则,不对动态网页元素进行数据更新。
[0138] 在本发明实施例中只有当上述预设的中断更新条件不满足时,才对动态网页元素进行数据更新,即只有当动态网页元素在当前页面的可视区内,或者浮层对动态网页元素的遮挡不满足预设的遮挡条件时,才更新动态网页元素的数据。如此避免在用户看不到动态网页元素或看不到动态网页元素内的关键信息时更新,节省了用户的数据的流量,同时减小了浏览器客户端的页面性能负载。
[0139] 在本发明实施例中,当判断预设的中断更新条件满足时,表明此时动态网页元素不在当前页面的可视区内,或者即便在可视区内也受处于显示状态的浮层的遮挡。但是当用户通过拖动页面的滚动条,或者改变浏览器窗口大小时,均会改变当前页面的可视区内显示的内容,此时原先不在可视区内的动态网页元素很可能进入了可视区内。另外,用户也可以通过点击处于显示状态的浮层的关闭按键来关闭处于显示状态的浮层,以消除处于显示状态的浮层对动态网页元素的遮挡。即用户的操作很可能改变动态网页元素的状态,因此需要对用户的操作进行实时监测,并重新判断预设的中断更新条件是否满足。
[0140] 在本发明实施例中,实时监听滚动条拖动事件、浏览器窗口大小改变事件或浮层关闭事件;当监听到滚动条拖动事件、浏览器窗口大小改变事件或浮层关闭事件时,重新判断预设的中断更新条件是否满足。
[0141] 上述重新判断预设的终端更新条件是否满足的操作与步骤201的操作相同,在此不再赘述。
[0142] 本发明实施例中,所有浮层具有相同的浮层标识,浏览器客户端可以根据浮层标识确定当前页面中是否包含浮层,并根据浮层的显示属性,来确定当前页面中是否存在处于显示状态的浮层,当存在处于显示状态的浮层时,确定浮层对动态网页元素的遮挡是否符合预设的遮挡条件。并在动态网页元素不在当前页面的可视区,或当前页面中存在处于显示状态的浮层且浮层对动态网页元素的遮挡满足预设的遮挡条件时,不对动态网页元素进行数据更新,如此能有效节省数据流量,增加页面性能,同时也可以扩大当前页面对应的网站服务器的承载能力。
[0143] 在本发明实施例中,当检测到动态网页元素的数据更新被触发时,判断预设的中断更新条件是否满足;预设的中断更新条件为:动态网页元素不在可视区内;或者动态网页元素在可视区内且当前页面中存在处于显示状态的浮层且浮层对动态网页元素的遮挡满足预设的遮挡条件;若预设的中断更新条件不满足,对动态网页元素数据更新;否则不对动态网页元素数据更新。本发明在动态网页元素不在可视区,或当前页面中存在正显示的浮层且浮层对动态网页元素形成满足预设的遮挡条件的遮挡时,不更新动态网页元素,节省用户数据流量,且减小页面性能负载。
[0144] 实施例3
[0145] 参见图3,本发明实施例提供了一种控制页面内容更新的装置,该装置用于执行上述实施例1提供的控制页面内容更新的方法。该装置具体包括:
[0146] 判断模块301,用于当检测到针对当前页面中的动态网页元素的数据更新操作被触发时,判断预设的中断更新条件是否满足;其中,预设的中断更新条件包括:动态网页元素不在当前页面的可视区内;或者,动态网页元素在当前页面的可视区内,且当前页面中存在处于显示状态的浮层;
[0147] 控制更新模块302,用于当判断模块301判断出预设的中断更新条件不满足,则对动态网页元素进行数据更新;否则,不对动态网页元素进行数据更新。
[0148] 上述判断模块301通过如下获取单元、确定单元和第一判断单元来判断预设的中断更新条件是否满足。
[0149] 获取单元,用于获取动态网页元素在当前页面中的位置及可视区在当前页面中的位置;确定单元,用于根据动态网页元素在当前页面中的位置和可视区在当前页面中的位置,确定动态网页元素是否在可视区内;第一判断单元,用于当确定动态网页元素不在可视区内时,判断预设的中断更新条件满足。
[0150] 但在动态网页元素在可视区内时,也可能由于浮层的影响而导致用户无法看到动态网页元素显示的内容,因此,当判断模块301确定动态网页元素在可视区内时,判断模块301还通过如下遍历单元和第二判断单元来判断预设的中断更新条件是否满足。
[0151] 遍历单元,用于当确定动态网页元素在可视区内时,遍历当前页面中每个浮层的显示属性,确定当前页面中是否存在处于显示状态的浮层;第二判断单元,用于当确定存在处于显示状态的浮层时,判断预设的中断更新条件满足。
[0152] 在本发明实施例中,当判断模块301判断预设的中断更新条件满足时,表明此时动态网页元素不在当前页面的可视区内,或者即便在可视区内也受处于显示状态的浮层的影响。但是当用户通过拖动页面的滚动条,或者改变浏览器窗口大小时,均会改变当前页面的可视区内显示的内容,此时原先不在可视区内的动态网页元素很可能进入了可视区内。另外,用户也可以通过点击处于显示状态的浮层的关闭按键来关闭处于显示状态的浮层,以消除处于显示状态的浮层对动态网页元素的影响。即用户的操作很可能改变动态网页元素的状态,因此需要对用户的操作进行实时监测,并重新判断预设的中断更新条件是否满足。
[0153] 因此该装置还通过如下监听模块来监听滚动条拖动事件、浏览器窗口大小改变事件或浮层关闭事件。
[0154] 监听模块,用于实时监听滚动条拖动事件、浏览器窗口大小改变事件或浮层关闭事件;当监听到滚动条拖动事件、浏览器窗口大小改变事件或浮层关闭事件时,重新判断预设的中断更新条件是否满足。
[0155] 在本发明实施例中,当检测到动态网页元素的数据更新被触发时,判断预设的中断更新条件是否满足;预设的中断更新条件为:动态网页元素不在可视区内;或者动态网页元素在可视区内且当前页面中存在处于显示状态的浮层;若预设的中断更新条件不满足,对动态网页元素数据更新;否则不对动态网页元素数据更新。本发明在动态网页元素不在可视区,或当前页面中存在正显示的浮层时,不更新动态网页元素,节省用户数据流量,且减小页面性能负载。
[0156] 实施例4
[0157] 参见图4,本发明实施例提供了一种控制页面内容更新的装置,该装置用于执行上述实施例2提供的控制页面内容更新的方法。该装置具体包括:
[0158] 判断模块401,用于当检测到针对当前页面中的动态网页元素的数据更新操作被触发时,判断预设的中断更新条件是否满足;其中,预设的中断更新条件包括:动态网页元素不在当前页面的可视区内;或者,动态网页元素在当前页面的可视区内,且当前页面中存在处于显示状态的浮层且浮层对动态网页元素的遮挡满足预设的遮挡条件;
[0159] 控制更新模块402,用于当判断模块401判断预设的中断更新条件不满足,则对动态网页元素进行数据更新;否则,不对动态网页元素进行数据更新。
[0160] 上述判断模块401通过如下获取单元、第一确定单元和第一判断单元来判断预设的中断更新条件是否满足。
[0161] 获取单元,用于获取动态网页元素在当前页面中的位置及可视区在当前页面中的位置;第一确定单元,用于根据动态网页元素在当前页面中的位置和可视区在当前页面中的位置,确定动态网页元素是否在可视区内;第一判断单元,用于当确定动态网页元素不在可视区内时,判断预设的中断更新条件满足。
[0162] 但在动态网页元素在可视区内时,也可能由于浮层的遮挡而导致用户无法看到动态网页元素显示的内容,因此,当判断模块401确定动态网页元素在可视区内时,判断模块401还通过如下遍历单元、第二确定单元和第二判断单元来判断预设的中断更新条件是否满足。
[0163] 遍历单元,用于当确定动态网页元素在可视区内时,遍历当前页面中每个浮层的显示属性,确定当前页面中是否存在处于显示状态的浮层;第二确定单元,用于当确定存在处于显示状态的浮层时,根据动态网页元素在当前页面中的位置及处于显示状态的浮层在当前页面中的位置,确定处于显示状态的浮层对动态网页元素的遮挡是否满足预设的遮挡条件;第二判断单元,用于当确定满足预设的遮挡条件时,判断预设的中断更新条件满足。
[0164] 上述预设的遮挡条件包括:处于显示状态的浮层对动态网页元素的遮挡比例超过预设阈值,或者,处于显示状态的浮层遮挡了动态网页元素中的特定区域。特定区域为用于显示动态网页元素中关键信息的区域,这些关键信息一般为用户着重关注的信息,如在直播体育赛况的视频中显示的比赛比分等。
[0165] 当预设的遮挡条件包括处于显示状态的浮层对动态网页元素的遮挡比例超过预设阈值时,上述第二确定单元包括:
[0166] 第一获取子单元,用于根据动态网页元素在当前页面中的位置及处于显示状态的浮层在当前页面中的位置,获取处于显示状态的浮层对动态网页元素的遮挡面积;第一计算子单元,用于根据遮挡面积和动态网页元素的总面积,计算处于显示状态的浮层对动态网页元素的遮挡比例;第一确定子单元,用于当遮挡比例超过预设阈值时,确定处于显示状态的浮层对动态网页元素的遮挡满足预设的遮挡条件。
[0167] 当预设的遮挡条件包括处于显示状态的浮层遮挡了动态网页元素中的特定区域时,上述第二确定单元包括:
[0168] 第二获取子单元,用于获取动态网页元素中特定区域在当前页面中的位置;第二确定子单元,用于根据特定区域在当前页面中的位置及处于显示状态的浮层在当前页面中的位置,确定处于显示状态的浮层是否遮挡了特定区域;第三确定子单元,用于当确定处于显示状态的浮层遮挡了特定区域时,确定处于显示状态的浮层对动态网页元素的遮挡满足预设的遮挡条件。
[0169] 在本发明实施例中,当判断模块401判断预设的中断更新条件满足时,表明此时动态网页元素不在当前页面的可视区内,或者即便在可视区内也受处于显示状态的浮层的遮挡。但是当用户通过拖动页面的滚动条,或者改变浏览器窗口大小时,均会改变当前页面的可视区内显示的内容,此时原先不在可视区内的动态网页元素很可能进入了可视区内。另外,用户也可以通过点击处于显示状态的浮层的关闭按键来关闭处于显示状态的浮层,以消除处于显示状态的浮层对动态网页元素的遮挡。即用户的操作很可能改变动态网页元素的状态,因此需要对用户的操作进行实时监测,并重新判断预设的中断更新条件是否满足。
[0170] 因此该装置还通过如下监听模块来监听滚动条拖动事件、浏览器窗口大小改变事件或浮层关闭事件。
[0171] 监听模块,用于实时监听滚动条拖动事件、浏览器窗口大小改变事件或浮层关闭事件;当监听到滚动条拖动事件、浏览器窗口大小改变事件或浮层关闭事件时,重新判断预设的中断更新条件是否满足。
[0172] 在本发明实施例中,动态网页元素在当前页面中的位置包括动态网页元素的高度和宽度、动态网页元素顶部与当前页面顶部之间的距离、动态网页元素的左边与当前页面的左边之间的距离;可视区在当前页面中的位置包括屏幕的高度和宽度、屏幕顶部与当前页面顶部之间的距离、屏幕左边与当前页面的左边之间的距离;
[0173] 第一确定单元通过如下第二计算子单元、第三计算子单元和第四确定子单元来确定动态网页元素是否位于可视区内。
[0174] 第二计算子单元,用于计算动态网页元素顶部与当前页面顶部之间的距离和动态网页元素的高度之间的第一和值,及计算屏幕顶部与当前页面顶部之间的距离和屏幕的高度之间的第二和值;第三计算子单元,用于计算动态网页元素的左边与当前页面的左边之间的距离和动态网页元素的宽度之间的第三和值,及计算屏幕左边与当前页面的左边之间的距离和屏幕的宽度之间的第四和值;第四确定子单元,用于当第一和值小于第二和值且大于屏幕顶部与当前页面顶部之间的距离,且第三和值小于第四和值且大于屏幕左边与当前页面的左边之间的距离时,确定动态网页元素位于可视区内。
[0175] 在本发明实施例中,当检测到动态网页元素的数据更新被触发时,判断预设的中断更新条件是否满足;预设的中断更新条件为:动态网页元素不在可视区内;或者动态网页元素在可视区内且当前页面中存在处于显示状态的浮层且浮层对动态网页元素的遮挡满足预设的遮挡条件;若预设的中断更新条件不满足,对动态网页元素数据更新;否则不对动态网页元素数据更新。本发明在动态网页元素不在可视区,或当前页面中存在正显示的浮层且浮层对动态网页元素形成满足预设的遮挡条件的遮挡时,不更新动态网页元素,节省用户数据流量,且减小页面性能负载。
[0176] 本发明实施例所提供的控制页面内容更新的装置可以为设备上的特定硬件或者安装于设备上的软件或固件等。所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,前述描述的系统、装置和单元的具体工作过程,均可以参考上述方法实施例中的对应过程。
[0177] 在本申请所提供的几个实施例中,应该理解到,所揭露装置和方法,可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,又例如,多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些通信接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
[0178] 所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
[0179] 另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
[0180] 所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
[0181] 以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以所述权利要求的保护范围为准。