网页变化检测方法及装置.pdf

上传人:Y94****206 文档编号:627121 上传时间:2018-02-26 格式:PDF 页数:20 大小:1.57MB
返回 下载 相关 举报
摘要
申请专利号:

CN201410436954.7

申请日:

2014.08.29

公开号:

CN104199915A

公开日:

2014.12.10

当前法律状态:

授权

有效性:

有权

法律详情:

授权|||实质审查的生效IPC(主分类):G06F 17/30申请日:20140829|||公开

IPC分类号:

G06F17/30

主分类号:

G06F17/30

申请人:

小米科技有限责任公司

发明人:

左景龙; 杜中义; 李远洋

地址:

100085 北京市海淀区清河中街68号华润五彩城购物中心二期13层

优先权:

专利代理机构:

北京尚伦律师事务所 11477

代理人:

代治国

PDF下载: PDF下载
内容摘要

本公开是关于一种网页变化检测方法及装置。所述方法包括:监测网页的DOM树中的Body节点及其子节点的变化;根据所述Body节点及其子节点的变化,对所述Body节点及其子节点进行检测,获得所述Body节点及其子节点变化后的节点内容;根据所述所述Body节点及其子节点变化后的节点内容确定所述网页变化后的预览内容,并对所述变化后的预览内容进行显示。本公开使得阅读模式下的预览内容能够随网页内容变化而自适应地变化。

权利要求书

1.  一种网页变化检测方法,其特征在于,包括:
监测网页的DOM树中的Body节点及其子节点的变化;
根据所述Body节点及其子节点的变化,对所述Body节点及其子节点进行检测,获得所述Body节点及其子节点变化后的节点内容;
根据所述所述Body节点及其子节点变化后的节点内容确定所述网页变化后的预览内容,并对所述变化后的预览内容进行显示。

2.
  根据权利要求1所述的方法,其特征在于,所述监测网页的DOM树中的Body节点及其子节点的变化,包括:
监测对所述Body节点及其子节点的DOM操作;
所述根据所述Body节点及其子节点的变化,对所述Body节点及其子节点进行检测,获得所述Body节点及其子节点变化后的节点内容,包括:
当监测到对所述Body节点及其子节点的DOM操作结束后,触发对所述Body节点及其子节点的检测;
检测所述Body节点及其子节点,获得所述Body节点及其子节点变化后的节点内容。

3.
  根据权利要求2所述的方法,其特征在于,所述根据所述Body节点及其子节点的变化,对所述Body节点及其子节点进行检测,获得所述Body节点及其子节点变化后的节点内容,还包括:
统计所述Body节点及其子节点中发生变化的非链接文字的总数量值;
当所述总数量值大于预设数量值时,检测所述Body节点及其子节点,获得所述Body节点及其子节点变化后的节点内容。

4.
  根据权利要求3所述的方法,其特征在于,所述统计所述Body节点及其子节点中发生变化的非链接文字的总数量值,包括:
获取所述Body节点及其子节点中增加的非链接文字的第一数量值,所述Body节点及其子节点中减少的非链接文字的第二数量值,以及所述Body节点 及其子节点中可见属性发生变化的非链接文字的第三数量值;
计算所述第一数量值、第二数量值及第三数量值之和,得到所述总数量值。

5.
  根据权利要求2-4中任一项所述的方法,其特征在于,所述根据所述Body节点及其子节点的变化,对所述Body节点及其子节点进行检测,获得所述Body节点及其子节点变化后的节点内容,还包括:
当本次触发对所述Body节点及其子节点的检测后,开始计时;
当在预设时间内未出现再次触发对所述Body节点及其子节点的检测时,检测所述Body节点及其子节点,获得所述Body节点及其子节点变化后的节点内容。

6.
  根据权利要求5所述的方法,其特征在于,所述根据所述Body节点及其子节点的变化,对所述Body节点及其子节点进行检测,获得所述Body节点及其子节点变化后的节点内容,还包括:
当在所述预设时间内出现再次触发对所述Body节点及其子节点的检测时,重新开始计时,直到在所述在预设时间内未出现触发对所述Body节点及其子节点的检测。

7.
  根据权利要求1所述的方法,其特征在于,所述根据所述所述Body节点及其子节点变化后的节点内容确定所述网页变化后的预览内容,并对所述变化后的预览内容进行显示,包括:
当确定所述网页变化后存在预览内容时,在所述网页上显示所述预览模式图标;
当接收到对所述预览模式图标的选定操作时,显示所述变化后的预览内容;
或者,
当确定所述网页变化后不存在预览内容时,在所述网页上隐藏所述预览模式图标。

8.
  一种网页变化检测装置,其特征在于,包括:
监测模块,用于监测网页的DOM树中的Body节点及其子节点的变化;
检测模块,用于根据所述Body节点及其子节点的变化,对所述Body节点及其子节点进行检测,获得所述Body节点及其子节点变化后的节点内容;
确定模块,用于根据所述所述Body节点及其子节点变化后的节点内容确定所述网页变化后的预览内容;
显示模块,用于对所述变化后的预览内容进行显示。

9.
  根据权利要求8所述的装置,其特征在于,所述监测模块,用于监测对所述Body节点及其子节点的DOM操作;
所述检测模块包括:
触发子模块,用于当监测到对所述Body节点及其子节点的DOM操作结束后,触发对所述Body节点及其子节点的检测;
检测子模块,用于检测所述Body节点及其子节点,获得所述Body节点及其子节点变化后的节点内容。

10.
  根据权利要求9所述的装置,其特征在于,所述检测模块还包括:
统计子模块,用于统计所述Body节点及其子节点中发生变化的非链接文字的总数量值;
所述检测子模块,用于当所述总数量值大于预设数量值时,检测所述Body节点及其子节点,获得所述Body节点及其子节点变化后的节点内容。

11.
  根据权利要求10所述的装置,其特征在于,所述统计子模块,用于获取所述Body节点及其子节点中增加的非链接文字的第一数量值,所述Body节点及其子节点中减少的非链接文字的第二数量值,以及所述Body节点及其子节点中可见属性发生变化的非链接文字的第三数量值;计算所述第一数量值、第二数量值及第三数量值之和,得到所述总数量值。

12.
  根据权利要求9-11所述的装置,其特征在于,所述检测模块还包括:
计时模块,用于当本次触发对所述Body节点及其子节点的检测后,开始计时;
所述检测子模块,用于当在预设时间内未出现再次触发对所述Body节点及其子节点的检测时,检测所述Body节点及其子节点,获得所述Body节点及其子节点变化后的节点内容。

13.
  根据权利要求12所述的装置,其特征在于,所述检测子模块,还用于当在所述预设时间内出现再次触发对所述Body节点及其子节点的检测时,重新开始计时,直到在所述在预设时间内未出现触发对所述Body节点及其子节点的检测。

14.
  根据权利要求8所述的装置,其特征在于,
所述显示模块,用于当确定所述网页变化后存在预览内容时,在所述网页上显示所述预览模式图标;当接收到对所述预览模式图标的选定操作时,显示所述变化后的预览内容;或者,当确定所述网页变化后不存在预览内容时,在所述网页上隐藏所述预览模式图标。

15.
  一种网页变化检测装置,其特征在于,包括:
处理器;
用于存储处理器可执行指令的存储器;
其中,所述处理器被配置为:
监测网页的DOM树中的Body节点及其子节点的变化;
根据所述Body节点及其子节点的变化,对所述Body节点及其子节点进行检测,获得所述Body节点及其子节点变化后的节点内容;
根据所述所述Body节点及其子节点变化后的节点内容确定所述网页变化后的预览内容,并对所述变化后的预览内容进行显示。

说明书

网页变化检测方法及装置
技术领域
本公开涉及网页技术领域,尤其涉及一种网页变化检测方法及装置。
背景技术
随着移动终端和互联网技术的发展,人们越来越多的通过手机、平板电脑等移动终端对网络进行访问。移动终端在对网络进行访问时,可以访问网页,网页中除了主要展示的正文以外,还包括标题、相关链接、推荐内容以及广告等等内容。目前,移动终端上的浏览器可通过阅读模式浏览网页,仅浏览网页中的关键内容。
相关技术中,在某一个时刻,浏览器检测网页,如果检测出阅读模式的内容,那么在移动终端的界面上就会显示出阅读模式的图标,当用户点击时,展现出阅读模式的内容。但是,当处于阅读模式时,如果此时网页内容发生了变化,阅读模式的预览内容不能够在网页内容发生变化后自动地适应网页的变化。
发明内容
为克服相关技术中存在的问题,本公开实施例提供一种网页变化检测方法及装置。
根据本公开实施例的第一方面,提供一种网页变化检测方法,包括:
监测网页的DOM树中的Body节点及其子节点的变化;
根据所述Body节点及其子节点的变化,对所述Body节点及其子节点进行检测,获得所述Body节点及其子节点变化后的节点内容;
根据所述所述Body节点及其子节点变化后的节点内容确定所述网页变化后的预览内容,并对所述变化后的预览内容进行显示。
本实施例中,通过对网页的DOM树中的Body节点及其子节点进行检查,根据其变化重新生成阅读模式下的预览内容,使得阅读模式下的预览内容能够随网页内容变化而自适应地变化。这样,使得在阅读模式下,可以更加准确地展示网页的预览内容,提高用户体验度。
可选的,所述监测网页的DOM树中的Body节点及其子节点的变化,包括:
监测对所述Body节点及其子节点的DOM操作;
所述根据所述Body节点及其子节点的变化,对所述Body节点及其子节点进行检测,获得所述Body节点及其子节点变化后的节点内容,包括:
当监测到对所述Body节点及其子节点的DOM操作结束后,触发对所述Body节点及其子节点的检测;
检测所述Body节点及其子节点,获得所述Body节点及其子节点变化后的节点内容。
在可选方案中,在Body节点及其子节点的DOM操作结束后,才触发对Body节点及其子节点的检测,可以大大地减少因Body节点及其子节点内容变化触发重新检测的次数,避免浏览器出现卡顿现象,提高了对网页关键内容的检测效率,节约终端的处理能力。
可选的,所述根据所述Body节点及其子节点的变化,对所述Body节点及其子节点进行检测,获得所述Body节点及其子节点变化后的节点内容,还包括:
统计所述Body节点及其子节点中发生变化的非链接文字的总数量值;
当所述总数量值大于预设数量值时,检测所述Body节点及其子节点,获得所述Body节点及其子节点变化后的节点内容。
在可选方案中,对于一些微小的网页变化,不会触发重新检测其Body节点及其子节点,除非有大量的非链接文字发生了变化,才会进行重新检测。这样,可以过滤掉大部分无效的变化,可以大大地减少因Body节点及其子节点 内容变化触发重新检测的次数,从而提高了对网页内容的检测效率,节约终端的处理能力。
可选的,所述统计所述Body节点及其子节点中发生变化的非链接文字的总数量值,包括:
获取所述Body节点及其子节点中增加的非链接文字的第一数量值,所述Body节点及其子节点中减少的非链接文字的第二数量值,以及所述Body节点及其子节点中可见属性发生变化的非链接文字的第三数量值;
计算所述第一数量值、第二数量值及第三数量值之和,得到所述总数量值。
在可选方案中,当有大量的非链接文字发生了变化,才会进行重新检测。这样,可以过滤掉大部分无效的变化,可以大大地减少因Body节点及其子节点内容变化触发重新检测的次数,从而提高了对网页内容的检测效率,节约终端的处理能力。
可选的,所述根据所述Body节点及其子节点的变化,对所述Body节点及其子节点进行检测,获得所述Body节点及其子节点变化后的节点内容,还包括:
当本次触发对所述Body节点及其子节点的检测后,开始计时;
当在预设时间内未出现再次触发对所述Body节点及其子节点的检测时,检测所述Body节点及其子节点,获得所述Body节点及其子节点变化后的节点内容。
在可选方案中,当有大量的非链接文字发生了变化,才会进行重新检测。这样,可以过滤掉大部分无效的变化,可以大大地减少因Body节点及其子节点内容变化触发重新检测的次数,从而提高了对网页内容的检测效率,节约终端的处理能力。
可选的,所述根据所述Body节点及其子节点的变化,对所述Body节点及其子节点进行检测,获得所述Body节点及其子节点变化后的节点内容,还包括:
当在所述预设时间内出现再次触发对所述Body节点及其子节点的检测时,重新开始计时,直到在所述在预设时间内未出现触发对所述Body节点及其子节点的检测。
在可选方案中,通过对相邻两次变化之间的时间间隔时间进行限定,避免在短时间内多次检测Body节点及其子节点而造成的浏览器的卡顿,进一步减少了检测次数,提高了对网页内容的检测效率,节约终端的处理能力。
可选的,所述根据所述所述Body节点及其子节点变化后的节点内容确定所述网页变化后的预览内容,并对所述变化后的预览内容进行显示,包括:
当确定所述网页变化后存在预览内容时,在所述网页上显示所述预览模式图标;
当接收到对所述预览模式图标的选定操作时,显示所述变化后的预览内容;
或者,
当确定所述网页变化后不存在预览内容时,在所述网页上隐藏所述预览模式图标。
在可选方案中,如果网页变化后存在预览内容,则在网页上显示预览模式图标,提示用户可以采用阅读模式;如果网页变化后不存在预览内容,则在网页上隐藏预览模式图标,提示用户无法采用阅读模式。这样,通过是否显示预览模式图标来提示用户网页发生变化,使得用户可以更准确地使用阅读模式浏览网页,用户体验度较好。
根据本公开实施例的第二方面,提供一种网页变化检测装置,包括:
监测模块,用于监测网页的DOM树中的Body节点及其子节点的变化;
检测模块,用于根据所述Body节点及其子节点的变化,对所述Body节点及其子节点进行检测,获得所述Body节点及其子节点变化后的节点内容;
确定模块,用于根据所述所述Body节点及其子节点变化后的节点内容确定所述网页变化后的预览内容;
显示模块,用于对所述变化后的预览内容进行显示。
可选的,所述监测模块,用于监测对所述Body节点及其子节点的DOM操作;
所述检测模块包括:
触发子模块,用于当监测到对所述Body节点及其子节点的DOM操作结束后,触发对所述Body节点及其子节点的检测;
检测子模块,用于检测所述Body节点及其子节点,获得所述Body节点及其子节点变化后的节点内容。
可选的,所述检测模块还包括:
统计子模块,用于统计所述Body节点及其子节点中发生变化的非链接文字的总数量值;
所述检测子模块,用于当所述总数量值大于预设数量值时,检测所述Body节点及其子节点,获得所述Body节点及其子节点变化后的节点内容。
可选的,所述统计子模块,用于获取所述Body节点及其子节点中增加的非链接文字的第一数量值,所述Body节点及其子节点中减少的非链接文字的第二数量值,以及所述Body节点及其子节点中可见属性发生变化的非链接文字的第三数量值;计算所述第一数量值、第二数量值及第三数量值之和,得到所述总数量值。
可选的,所述检测模块还包括:
计时模块,用于当本次触发对所述Body节点及其子节点的检测后,开始计时;
所述检测子模块,用于当在预设时间内未出现再次触发对所述Body节点及其子节点的检测时,检测所述Body节点及其子节点,获得所述Body节点及其子节点变化后的节点内容。
可选的,所述检测子模块,还用于当在所述预设时间内出现再次触发对所述Body节点及其子节点的检测时,重新开始计时,直到在所述在预设时间内 未出现触发对所述Body节点及其子节点的检测。
可选的,所述显示模块,用于当确定所述网页变化后存在预览内容时,在所述网页上显示所述预览模式图标;当接收到对所述预览模式图标的选定操作时,显示所述变化后的预览内容;或者,当确定所述网页变化后不存在预览内容时,在所述网页上隐藏所述预览模式图标。
根据本公开实施例的第三方面,提供一种网页变化检测装置,包括:
处理器;
用于存储处理器可执行指令的存储器;
其中,所述处理器被配置为:
监测网页的DOM树中的Body节点及其子节点的变化;
根据所述Body节点及其子节点的变化,对所述Body节点及其子节点进行检测,获得所述Body节点及其子节点变化后的节点内容;
根据所述所述Body节点及其子节点变化后的节点内容确定所述网页变化后的预览内容,并对所述变化后的预览内容进行显示。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理。
图1是根据一示例性实施例示出的一种网页变化检测方法的流程图;
图2是根据另一示例性实施例示出的一种网页变化检测方法的流程图;
图3是根据另一示例性实施例示出的一种网页变化检测方法的流程图;
图4是根据另一示例性实施例示出的一种网页变化检测方法的流程图;
图5是根据另一示例性实施例示出的一种网页变化检测方法的流程图;
图6是根据一示例性实施例示出的一种网页变化检测装置的框图;
图7是根据一示例性实施例示出的检测模块的框图;
图8是根据一示例性实施例示出的一种用于网页变化检测的装置800的框图。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本公开相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本公开的一些方面相一致的装置和方法的例子。
图1是根据一示例性实施例示出的一种网页变化检测方法的流程图,如图1所示,网页变化检测方法用于终端中,包括以下步骤。
在步骤S11中,监测网页的DOM树中的Body节点及其子节点的变化;
在步骤S12中,根据Body节点及其子节点的变化,对Body节点及其子节点进行检测,获得Body节点及其子节点变化后的节点内容;
在步骤S13中,根据Body节点及其子节点变化后的节点内容确定网页变化后的预览内容,并对变化后的预览内容进行显示。
本实施例中,通过对网页的DOM树中的Body节点及其子节点进行检查,根据其变化重新生成阅读模式下的预览内容,使得阅读模式下的预览内容能够随网页内容变化而自适应地变化。这样,使得在阅读模式下,可以更加准确地展示网页的预览内容,提高用户体验度。
图2是根据另一示例性实施例示出的一种网页变化检测方法的流程图,如图2所示,可选的,上述步骤S11包括:
在步骤S21中,监测对Body节点及其子节点的DOM操作;
上述步骤S12包括:
在步骤S22中,当监测到对Body节点及其子节点的DOM操作结束后,触发对Body节点及其子节点的检测;
在步骤S23中,检测所述Body节点及其子节点,获得Body节点及其子 节点变化后的节点内容。
例如,可以给Body节点及其子节点添加一个变动观察器(Mutation Observer),这个Mutation Observer是javascript中监视DOM变动的接口,当DOM对象树发生任何变动的时候,Mutation Observer会得到通知。在DOM发生变动以后,并不会马上触发相应的事件,而是要等到当前所有DOM操作都结束后才触发相应的事件。举例来说,如果在文档中连续插入1000个段落(p元素),就会连续触发1000个插入事件,,执行每个事件的回调函数,这很可能造成浏览器的卡顿。但是,Mutation Observer只在1000个段落都插入结束后才会触发插入事件,而且只触发一次。
在可选方案中,在Body节点及其子节点的DOM操作结束后,才触发对Body节点及其子节点的检测,可以大大地减少因Body节点及其子节点内容变化触发重新检测的次数,避免浏览器出现卡顿现象,提高了对网页关键内容的检测效率,节约终端的处理能力。
图3是根据另一示例性实施例示出的一种网页变化检测方法的流程图,如图3所示,可选的,上述步骤S12还包括:
在步骤S31中,统计Body节点及其子节点中发生变化的非链接文字的总数量值;
在步骤S32中,当总数量值大于预设数量值时,检测Body节点及其子节点,获得Body节点及其子节点变化后的节点内容。
阅读模式有一个很大的特性就是包含的非链接的文字比较多,这样,可以统计Body节点及其子节点中发生变化的非链接文字的总数量值,如果总数量值小于或等于预设的最小变化值,也就是说发生变化的非链接文字数量较少,则不需要重新检测Body节点及其子节点,否则重新检测Body节点及其子节点。
在可选方案中,对于一些微小的网页变化,不会触发重新检测其Body节点及其子节点,除非有大量的非链接文字发生了变化,才会进行重新检测。这 样,可以过滤掉大部分无效的变化,可以大大地减少因Body节点及其子节点内容变化触发重新检测的次数,从而提高了对网页内容的检测效率,节约终端的处理能力。
图4是根据另一示例性实施例示出的一种网页变化检测方法的流程图,如图4所示,可选的,上述步骤S31包括:
在步骤S41中,获取Body节点及其子节点中增加的非链接文字的第一数量值,Body节点及其子节点中减少的非链接文字的第二数量值,以及Body节点及其子节点中可见属性发生变化的非链接文字的第三数量值;
在步骤S42中,计算第一数量值、第二数量值及第三数量值之和,得到总数量值。
例如,Body节点及其子节点中增加的非链接文字的数量为A,Body节点及其子节点中减少的非链接文字的数量为R,Body节点及其子节点中可见属性发生变化(如从可见变为不可见,或者从不可见变为可见)的非链接文字数量为V,如果A、R、V之和大于预设的最小变化值,则检测Body节点及其子节点,获得Body节点及其子节点变化后的节点内容。
在可选方案中,当有大量的非链接文字发生了变化,才会进行重新检测。这样,可以过滤掉大部分无效的变化,可以大大地减少因Body节点及其子节点内容变化触发重新检测的次数,从而提高了对网页内容的检测效率,节约终端的处理能力。
图5是根据另一示例性实施例示出的一种网页变化检测方法的流程图,如图5所示,可选的,上述步骤S12还包括:
在步骤S51中,当本次触发对Body节点及其子节点的检测后,开始计时;
在步骤S52中,当在预设时间内未出现再次触发对Body节点及其子节点的检测时,检测Body节点及其子节点,获得Body节点及其子节点变化后的节点内容。
可选的,上述步骤S12还包括:在步骤S53中,当在预设时间内出现再次 触发对Body节点及其子节点的检测时,重新开始计时,直到在在预设时间内未出现触发对Body节点及其子节点的检测。
当网页的内容在较短时间内多次发生变化,即便每次变化都是所有DOM操作都结束后才触发检测操作的,仍然使得浏览器在短时间内多次执行检测操作,容易造成浏览器的卡顿。因此,对相邻两次变化之间的时间间隔时间进行及时,如果相邻两次变化之间的时间间隔很近,则等在后的变化完成后,再进行对Body节点及其子节点的检测。
例如,可以进一步添加一个定时器,设定一个预设时间为N毫秒,在检测操作被触发后,开始计时,如果在N毫秒内,检测操作又一次被触发,则重置定时器,重新开始计时,直到在N毫秒内,检测操作没有被触发,则执行对Body节点及其子节点的检测。
在可选方案中,通过对相邻两次变化之间的时间间隔时间进行限定,避免在短时间内多次检测Body节点及其子节点而造成的浏览器的卡顿,进一步减少了检测次数,提高了对网页内容的检测效率,节约终端的处理能力。
可选的,上述步骤S13包括:
当确定所述网页变化后存在预览内容时,在所述网页上显示所述预览模式图标;
当接收到对所述预览模式图标的选定操作时,显示所述变化后的预览内容;
或者,
当确定所述网页变化后不存在预览内容时,在所述网页上隐藏所述预览模式图标。
在可选方案中,如果网页变化后存在预览内容,则在网页上显示预览模式图标,提示用户可以采用阅读模式;如果网页变化后不存在预览内容,则在网页上隐藏预览模式图标,提示用户无法采用阅读模式。这样,通过是否显示预览模式图标来提示用户网页发生变化,使得用户可以更准确地使用阅读模式浏 览网页,用户体验度较好。
可选的,确定网页中是否存在预览内容,可以采用以下方式。
对网页的网页文档进行解析后,可以生成DOM树和render树,由render树确定DOM树中的各个可见节点,并确定各可见节点的预览值;依据各可见节点的预览值确定网页中的预览内容。
DOM树中存储有由对网页文档进行解析而得到的各个节点,例如,DOM树的根节点是文件(Document)对象,即对网页文档进行操作的入口;又如,DOM树中的一类子节点是文本(text)对象,即网页文档中的一些文本内容。
有上述内容可知,DOM树中具备不同类型的节点,而各类型的节点在网页文档中的作用也各不相同,因此,DOM树中的一部分节点对应的内容可以在网页中显示出来,如表示text对象的节点,另一部分节点对应的内容不能在网页中进行显示,如表示Document对象的根节点。
若节点对应的内容可以在网页中显示,则将该节点作为可见节点,即可见节点是在网页中显示的内容对应的节点;若节点对应的内容不能在网页中显示,则将该节点作为不可见节点。
页面渲染时,render树负责记录DOM树中的可见节点在页面中的估计显示位置,因此,对于DOM树中的各个节点,可以通过查询render树来确定以确定该节点是否可见,从而确定DOM树中的各个可见节点。
网页中包含各种各样的信息,如标题、正文、图片和链接等,因此对于DOM树中的可见节点,由于其在网页文档中表征的具体内容不同。本公开实施例可以依据网页重新布局时的需求,为各可见节点配置相应的预览值。所述预览值可以依据所述节点所表征的内容的类型,如图片、文字等进行配置,也可以依据各可见节点在网页中表征的具体内容产生相应的预览值。
例如,重新布局时着重显示页面中的图片,则与图片相关的标签可以配置较高的预览值。又如,重新布局时着重显示页面中的文字内容,则与标题、正文相关的标签可以配置较高的预览值,或可以根据文字的多少确定预览值得高 低。
获取到预览内容后,就获取到了重新布局所要显示的内容,因此可以显示该预览内容。依据各可见节点的预览值确定网页中的预览内容例如,可以设定一个预览值的标准,凡是预览值达到该标准的可见节点,其对应的内容都可以设为预览内容。又如,可以仅将预览值最高的可见节点对应的内容作为预览内容。
在可选方案中,可以获取DOM树和render树,并确定DOM树中的可见节点,再依据具体的需求,由各可见节点的标签确定对应可见节点的预览值,最终确定网页中的预览内容,预览内容可以是依据需求而从网页中提取的关键内容,从而可以较小的移动终端的屏幕中显示关键内容,方便用户查看、阅读网页的内容,减少浏览时间。
图6是根据一示例性实施例示出的一种网页变化检测装置的框图。如图6所示,该装置包括监测模块61,检测模块62,确定模块63和显示模块64。
监测模块61被配置为监测网页的DOM树中的Body节点及其子节点的变化;
检测模块62被配置为根据所述Body节点及其子节点的变化,对所述Body节点及其子节点进行检测,获得所述Body节点及其子节点变化后的节点内容;
确定模块63被配置为根据所述所述Body节点及其子节点变化后的节点内容确定所述网页变化后的预览内容;
显示模块64被配置为对所述变化后的预览内容进行显示。
可选的,监测模块被配置为监测对所述Body节点及其子节点的DOM操作。图7是根据一示例性实施例示出的检测模块的框图。如图7所示,所述检测模块62包括:
触发子模块71被配置为当监测到对所述Body节点及其子节点的DOM操作结束后,触发对所述Body节点及其子节点的检测;
检测子模块72被配置为检测所述Body节点及其子节点,获得所述Body 节点及其子节点变化后的节点内容。
可选的,所述检测模块62还包括:
统计子模块73被配置为统计所述Body节点及其子节点中发生变化的非链接文字的总数量值;
所述检测子模块72被配置为当所述总数量值大于预设数量值时,检测所述Body节点及其子节点,获得所述Body节点及其子节点变化后的节点内容。
可选的,所述统计子模块73被配置为获取所述Body节点及其子节点中增加的非链接文字的第一数量值,所述Body节点及其子节点中减少的非链接文字的第二数量值,以及所述Body节点及其子节点中可见属性发生变化的非链接文字的第三数量值;计算所述第一数量值、第二数量值及第三数量值之和,得到所述总数量值。
可选的,所述检测模块62还包括:
计时模块74被配置为当本次触发对所述Body节点及其子节点的检测后,开始计时;
所述检测子模块72被配置为当在预设时间内未出现再次触发对所述Body节点及其子节点的检测时,检测所述Body节点及其子节点,获得所述Body节点及其子节点变化后的节点内容。
可选的,所述检测子模块62还被配置为当在所述预设时间内出现再次触发对所述Body节点及其子节点的检测时,重新开始计时,直到在所述在预设时间内未出现触发对所述Body节点及其子节点的检测。
可选的,所述显示模块64被配置为当确定所述网页变化后存在预览内容时,在所述网页上显示所述预览模式图标;当接收到对所述预览模式图标的选定操作时,显示所述变化后的预览内容;或者,当确定所述网页变化后不存在预览内容时,在所述网页上隐藏所述预览模式图标。
关于上述实施例中的装置,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。
本实施例的装置,通过对网页的DOM树中的Body节点及其子节点进行检查,根据其变化重新生成阅读模式下的预览内容,使得阅读模式下的预览内容能够随网页内容变化而自适应地变化。这样,使得在阅读模式下,可以更加准确地展示网页的预览内容,提高用户体验度。
本公开还提供一种网页变化检测装置,包括:
处理器;
用于存储处理器可执行指令的存储器;
其中,所述处理器被配置为:
监测网页的DOM树中的Body节点及其子节点的变化;
根据所述Body节点及其子节点的变化,对所述Body节点及其子节点进行检测,获得所述Body节点及其子节点变化后的节点内容;
根据所述所述Body节点及其子节点变化后的节点内容确定所述网页变化后的预览内容,并对所述变化后的预览内容进行显示。
图8是根据一示例性实施例示出的一种用于网页变化检测的装置800的框图。例如,装置800可以是移动电话,计算机,数字广播终端,消息收发设备,游戏控制台,平板设备,医疗设备,健身设备,个人数字助理等。
如图8所示,装置800可以包括以下一个或多个组件:处理组件802,存储器804,电源组件806,多媒体组件808,音频组件810,输入/输出(I/O)的接口812,传感器组件814,以及通信组件816。
处理组件802通常控制装置800的整体操作,诸如与显示,电话呼叫,数据通信,相机操作和记录操作相关联的操作。处理组件802可以包括一个或多个处理器820来执行指令,以完成上述的方法的全部或部分步骤。此外,处理组件802可以包括一个或多个模块,便于处理组件802和其他组件之间的交互。例如,处理组件802可以包括多媒体模块,以方便多媒体组件808和处理组件802之间的交互。
存储器804被配置为存储各种类型的数据以支持在设备800的操作。这些 数据的示例包括用于在装置800上操作的任何应用程序或方法的指令,联系人数据,电话簿数据,消息,图片,视频等。存储器804可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(SRAM),电可擦除可编程只读存储器(EEPROM),可擦除可编程只读存储器(EPROM),可编程只读存储器(PROM),只读存储器(ROM),磁存储器,快闪存储器,磁盘或光盘。
电源组件806为装置800的各种组件提供电力。电源组件806可以包括电源管理系统,一个或多个电源,及其他与为装置800生成、管理和分配电力相关联的组件。
多媒体组件808包括在所述装置800和用户之间的提供一个输出接口的屏幕。在一些实施例中,屏幕可以包括液晶显示器(LCD)和触摸面板(TP)。如果屏幕包括触摸面板,屏幕可以被实现为触摸屏,以接收来自用户的输入信号。触摸面板包括一个或多个触摸传感器以感测触摸、滑动和触摸面板上的手势。所述触摸传感器可以不仅感测触摸或滑动动作的边界,而且还检测与所述触摸或滑动操作相关的持续时间和压力。在一些实施例中,多媒体组件808包括一个前置摄像头和/或后置摄像头。当设备800处于操作模式,如拍摄模式或视频模式时,前置摄像头和/或后置摄像头可以接收外部的多媒体数据。每个前置摄像头和后置摄像头可以是一个固定的光学透镜系统或具有焦距和光学变焦能力。
音频组件810被配置为输出和/或输入音频信号。例如,音频组件810包括一个麦克风(MIC),当装置800处于操作模式,如呼叫模式、记录模式和语音识别模式时,麦克风被配置为接收外部音频信号。所接收的音频信号可以被进一步存储在存储器804或经由通信组件816发送。在一些实施例中,音频组件810还包括一个扬声器,用于输出音频信号。
I/O接口812为处理组件802和外围接口模块之间提供接口,上述外围接口模块可以是键盘,点击轮,按钮等。这些按钮可包括但不限于:主页按钮、 音量按钮、启动按钮和锁定按钮。
传感器组件814包括一个或多个传感器,用于为装置800提供各个方面的状态评估。例如,传感器组件814可以检测到设备800的打开/关闭状态,组件的相对定位,例如所述组件为装置800的显示器和小键盘,传感器组件814还可以检测装置800或装置800一个组件的位置改变,用户与装置800接触的存在或不存在,装置800方位或加速/减速和装置800的温度变化。传感器组件814可以包括接近传感器,被配置用来在没有任何的物理接触时检测附近物体的存在。传感器组件814还可以包括光传感器,如CMOS或CCD图像传感器,用于在成像应用中使用。在一些实施例中,该传感器组件814还可以包括加速度传感器,陀螺仪传感器,磁传感器,压力传感器或温度传感器。
通信组件816被配置为便于装置800和其他设备之间有线或无线方式的通信。装置800可以接入基于通信标准的无线网络,如WiFi,2G或3G,或它们的组合。在一个示例性实施例中,通信组件816经由广播信道接收来自外部广播管理系统的广播信号或广播相关信息。在一个示例性实施例中,所述通信组件816还包括近场通信(NFC)模块,以促进短程通信。例如,在NFC模块可基于射频识别(RFID)技术,红外数据协会(IrDA)技术,超宽带(UWB)技术,蓝牙(BT)技术和其他技术来实现。
在示例性实施例中,装置800可以被一个或多个应用专用集成电路(ASIC)、数字信号处理器(DSP)、数字信号处理设备(DSPD)、可编程逻辑器件(PLD)、现场可编程门阵列(FPGA)、控制器、微控制器、微处理器或其他电子元件实现,用于执行上述方法。
在示例性实施例中,还提供了一种包括指令的非临时性计算机可读存储介质,例如包括指令的存储器804,上述指令可由装置800的处理器820执行以完成上述方法。例如,所述非临时性计算机可读存储介质可以是ROM、随机存取存储器(RAM)、CD-ROM、磁带、软盘和光数据存储设备等。
一种非临时性计算机可读存储介质,当所述存储介质中的指令由移动终端 的处理器执行时,使得移动终端能够执行一种网页变化检测方法,包括:
监测网页的DOM树中的Body节点及其子节点的变化;
根据所述Body节点及其子节点的变化,对所述Body节点及其子节点进行检测,获得所述Body节点及其子节点变化后的节点内容;
根据所述所述Body节点及其子节点变化后的节点内容确定所述网页变化后的预览内容,并对所述变化后的预览内容进行显示。
可选的,所述监测网页的DOM树中的Body节点及其子节点的变化,包括:
监测对所述Body节点及其子节点的DOM操作;
所述根据所述Body节点及其子节点的变化,对所述Body节点及其子节点进行检测,获得所述Body节点及其子节点变化后的节点内容,包括:
当监测到对所述Body节点及其子节点的DOM操作结束后,触发对所述Body节点及其子节点的检测;
检测所述Body节点及其子节点,获得所述Body节点及其子节点变化后的节点内容。
可选的,所述根据所述Body节点及其子节点的变化,对所述Body节点及其子节点进行检测,获得所述Body节点及其子节点变化后的节点内容,还包括:
统计所述Body节点及其子节点中发生变化的非链接文字的总数量值;
当所述总数量值大于预设数量值时,检测所述Body节点及其子节点,获得所述Body节点及其子节点变化后的节点内容。
可选的,所述统计所述Body节点及其子节点中发生变化的非链接文字的总数量值,包括:
获取所述Body节点及其子节点中增加的非链接文字的第一数量值,所述Body节点及其子节点中减少的非链接文字的第二数量值,以及所述Body节点及其子节点中可见属性发生变化的非链接文字的第三数量值;
计算所述第一数量值、第二数量值及第三数量值之和,得到所述总数量值。
可选的,所述根据所述Body节点及其子节点的变化,对所述Body节点及其子节点进行检测,获得所述Body节点及其子节点变化后的节点内容,还包括:
当本次触发对所述Body节点及其子节点的检测后,开始计时;
当在预设时间内未出现再次触发对所述Body节点及其子节点的检测时,检测所述Body节点及其子节点,获得所述Body节点及其子节点变化后的节点内容。
可选的,所述根据所述Body节点及其子节点的变化,对所述Body节点及其子节点进行检测,获得所述Body节点及其子节点变化后的节点内容,还包括:
当在所述预设时间内出现再次触发对所述Body节点及其子节点的检测时,重新开始计时,直到在所述在预设时间内未出现触发对所述Body节点及其子节点的检测。
可选的,所述根据所述所述Body节点及其子节点变化后的节点内容确定所述网页变化后的预览内容,并对所述变化后的预览内容进行显示,包括:
当确定所述网页变化后存在预览内容时,在所述网页上显示所述预览模式图标;
当接收到对所述预览模式图标的选定操作时,显示所述变化后的预览内容;
或者,
当确定所述网页变化后不存在预览内容时,在所述网页上隐藏所述预览模式图标。
本实施例中,通过对网页的DOM树中的Body节点及其子节点进行检查,根据其变化重新生成阅读模式下的预览内容,使得阅读模式下的预览内容能够随网页内容变化而自适应地变化。这样,使得在阅读模式下,可以更加准确地 展示网页的预览内容,提高用户体验度。
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本公开的其它实施方案。本申请旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的真正范围和精神由下面的权利要求指出。
应当理解的是,本公开并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本公开的范围仅由所附的权利要求来限制。

网页变化检测方法及装置.pdf_第1页
第1页 / 共20页
网页变化检测方法及装置.pdf_第2页
第2页 / 共20页
网页变化检测方法及装置.pdf_第3页
第3页 / 共20页
点击查看更多>>
资源描述

《网页变化检测方法及装置.pdf》由会员分享,可在线阅读,更多相关《网页变化检测方法及装置.pdf(20页珍藏版)》请在专利查询网上搜索。

1、10申请公布号CN104199915A43申请公布日20141210CN104199915A21申请号201410436954722申请日20140829G06F17/3020060171申请人小米科技有限责任公司地址100085北京市海淀区清河中街68号华润五彩城购物中心二期13层72发明人左景龙杜中义李远洋74专利代理机构北京尚伦律师事务所11477代理人代治国54发明名称网页变化检测方法及装置57摘要本公开是关于一种网页变化检测方法及装置。所述方法包括监测网页的DOM树中的BODY节点及其子节点的变化;根据所述BODY节点及其子节点的变化,对所述BODY节点及其子节点进行检测,获得所述B。

2、ODY节点及其子节点变化后的节点内容;根据所述所述BODY节点及其子节点变化后的节点内容确定所述网页变化后的预览内容,并对所述变化后的预览内容进行显示。本公开使得阅读模式下的预览内容能够随网页内容变化而自适应地变化。51INTCL权利要求书3页说明书11页附图5页19中华人民共和国国家知识产权局12发明专利申请权利要求书3页说明书11页附图5页10申请公布号CN104199915ACN104199915A1/3页21一种网页变化检测方法,其特征在于,包括监测网页的DOM树中的BODY节点及其子节点的变化;根据所述BODY节点及其子节点的变化,对所述BODY节点及其子节点进行检测,获得所述BOD。

3、Y节点及其子节点变化后的节点内容;根据所述所述BODY节点及其子节点变化后的节点内容确定所述网页变化后的预览内容,并对所述变化后的预览内容进行显示。2根据权利要求1所述的方法,其特征在于,所述监测网页的DOM树中的BODY节点及其子节点的变化,包括监测对所述BODY节点及其子节点的DOM操作;所述根据所述BODY节点及其子节点的变化,对所述BODY节点及其子节点进行检测,获得所述BODY节点及其子节点变化后的节点内容,包括当监测到对所述BODY节点及其子节点的DOM操作结束后,触发对所述BODY节点及其子节点的检测;检测所述BODY节点及其子节点,获得所述BODY节点及其子节点变化后的节点内容。

4、。3根据权利要求2所述的方法,其特征在于,所述根据所述BODY节点及其子节点的变化,对所述BODY节点及其子节点进行检测,获得所述BODY节点及其子节点变化后的节点内容,还包括统计所述BODY节点及其子节点中发生变化的非链接文字的总数量值;当所述总数量值大于预设数量值时,检测所述BODY节点及其子节点,获得所述BODY节点及其子节点变化后的节点内容。4根据权利要求3所述的方法,其特征在于,所述统计所述BODY节点及其子节点中发生变化的非链接文字的总数量值,包括获取所述BODY节点及其子节点中增加的非链接文字的第一数量值,所述BODY节点及其子节点中减少的非链接文字的第二数量值,以及所述BODY。

5、节点及其子节点中可见属性发生变化的非链接文字的第三数量值;计算所述第一数量值、第二数量值及第三数量值之和,得到所述总数量值。5根据权利要求24中任一项所述的方法,其特征在于,所述根据所述BODY节点及其子节点的变化,对所述BODY节点及其子节点进行检测,获得所述BODY节点及其子节点变化后的节点内容,还包括当本次触发对所述BODY节点及其子节点的检测后,开始计时;当在预设时间内未出现再次触发对所述BODY节点及其子节点的检测时,检测所述BODY节点及其子节点,获得所述BODY节点及其子节点变化后的节点内容。6根据权利要求5所述的方法,其特征在于,所述根据所述BODY节点及其子节点的变化,对所述。

6、BODY节点及其子节点进行检测,获得所述BODY节点及其子节点变化后的节点内容,还包括当在所述预设时间内出现再次触发对所述BODY节点及其子节点的检测时,重新开始计时,直到在所述在预设时间内未出现触发对所述BODY节点及其子节点的检测。7根据权利要求1所述的方法,其特征在于,所述根据所述所述BODY节点及其子节点变化后的节点内容确定所述网页变化后的预览内容,并对所述变化后的预览内容进行显权利要求书CN104199915A2/3页3示,包括当确定所述网页变化后存在预览内容时,在所述网页上显示所述预览模式图标;当接收到对所述预览模式图标的选定操作时,显示所述变化后的预览内容;或者,当确定所述网页变。

7、化后不存在预览内容时,在所述网页上隐藏所述预览模式图标。8一种网页变化检测装置,其特征在于,包括监测模块,用于监测网页的DOM树中的BODY节点及其子节点的变化;检测模块,用于根据所述BODY节点及其子节点的变化,对所述BODY节点及其子节点进行检测,获得所述BODY节点及其子节点变化后的节点内容;确定模块,用于根据所述所述BODY节点及其子节点变化后的节点内容确定所述网页变化后的预览内容;显示模块,用于对所述变化后的预览内容进行显示。9根据权利要求8所述的装置,其特征在于,所述监测模块,用于监测对所述BODY节点及其子节点的DOM操作;所述检测模块包括触发子模块,用于当监测到对所述BODY节。

8、点及其子节点的DOM操作结束后,触发对所述BODY节点及其子节点的检测;检测子模块,用于检测所述BODY节点及其子节点,获得所述BODY节点及其子节点变化后的节点内容。10根据权利要求9所述的装置,其特征在于,所述检测模块还包括统计子模块,用于统计所述BODY节点及其子节点中发生变化的非链接文字的总数量值;所述检测子模块,用于当所述总数量值大于预设数量值时,检测所述BODY节点及其子节点,获得所述BODY节点及其子节点变化后的节点内容。11根据权利要求10所述的装置,其特征在于,所述统计子模块,用于获取所述BODY节点及其子节点中增加的非链接文字的第一数量值,所述BODY节点及其子节点中减少的。

9、非链接文字的第二数量值,以及所述BODY节点及其子节点中可见属性发生变化的非链接文字的第三数量值;计算所述第一数量值、第二数量值及第三数量值之和,得到所述总数量值。12根据权利要求911所述的装置,其特征在于,所述检测模块还包括计时模块,用于当本次触发对所述BODY节点及其子节点的检测后,开始计时;所述检测子模块,用于当在预设时间内未出现再次触发对所述BODY节点及其子节点的检测时,检测所述BODY节点及其子节点,获得所述BODY节点及其子节点变化后的节点内容。13根据权利要求12所述的装置,其特征在于,所述检测子模块,还用于当在所述预设时间内出现再次触发对所述BODY节点及其子节点的检测时,。

10、重新开始计时,直到在所述在预设时间内未出现触发对所述BODY节点及其子节点的检测。14根据权利要求8所述的装置,其特征在于,所述显示模块,用于当确定所述网页变化后存在预览内容时,在所述网页上显示所述权利要求书CN104199915A3/3页4预览模式图标;当接收到对所述预览模式图标的选定操作时,显示所述变化后的预览内容;或者,当确定所述网页变化后不存在预览内容时,在所述网页上隐藏所述预览模式图标。15一种网页变化检测装置,其特征在于,包括处理器;用于存储处理器可执行指令的存储器;其中,所述处理器被配置为监测网页的DOM树中的BODY节点及其子节点的变化;根据所述BODY节点及其子节点的变化,对。

11、所述BODY节点及其子节点进行检测,获得所述BODY节点及其子节点变化后的节点内容;根据所述所述BODY节点及其子节点变化后的节点内容确定所述网页变化后的预览内容,并对所述变化后的预览内容进行显示。权利要求书CN104199915A1/11页5网页变化检测方法及装置技术领域0001本公开涉及网页技术领域,尤其涉及一种网页变化检测方法及装置。背景技术0002随着移动终端和互联网技术的发展,人们越来越多的通过手机、平板电脑等移动终端对网络进行访问。移动终端在对网络进行访问时,可以访问网页,网页中除了主要展示的正文以外,还包括标题、相关链接、推荐内容以及广告等等内容。目前,移动终端上的浏览器可通过阅。

12、读模式浏览网页,仅浏览网页中的关键内容。0003相关技术中,在某一个时刻,浏览器检测网页,如果检测出阅读模式的内容,那么在移动终端的界面上就会显示出阅读模式的图标,当用户点击时,展现出阅读模式的内容。但是,当处于阅读模式时,如果此时网页内容发生了变化,阅读模式的预览内容不能够在网页内容发生变化后自动地适应网页的变化。发明内容0004为克服相关技术中存在的问题,本公开实施例提供一种网页变化检测方法及装置。0005根据本公开实施例的第一方面,提供一种网页变化检测方法,包括0006监测网页的DOM树中的BODY节点及其子节点的变化;0007根据所述BODY节点及其子节点的变化,对所述BODY节点及其。

13、子节点进行检测,获得所述BODY节点及其子节点变化后的节点内容;0008根据所述所述BODY节点及其子节点变化后的节点内容确定所述网页变化后的预览内容,并对所述变化后的预览内容进行显示。0009本实施例中,通过对网页的DOM树中的BODY节点及其子节点进行检查,根据其变化重新生成阅读模式下的预览内容,使得阅读模式下的预览内容能够随网页内容变化而自适应地变化。这样,使得在阅读模式下,可以更加准确地展示网页的预览内容,提高用户体验度。0010可选的,所述监测网页的DOM树中的BODY节点及其子节点的变化,包括0011监测对所述BODY节点及其子节点的DOM操作;0012所述根据所述BODY节点及其。

14、子节点的变化,对所述BODY节点及其子节点进行检测,获得所述BODY节点及其子节点变化后的节点内容,包括0013当监测到对所述BODY节点及其子节点的DOM操作结束后,触发对所述BODY节点及其子节点的检测;0014检测所述BODY节点及其子节点,获得所述BODY节点及其子节点变化后的节点内容。0015在可选方案中,在BODY节点及其子节点的DOM操作结束后,才触发对BODY节点及其子节点的检测,可以大大地减少因BODY节点及其子节点内容变化触发重新检测的次数,说明书CN104199915A2/11页6避免浏览器出现卡顿现象,提高了对网页关键内容的检测效率,节约终端的处理能力。0016可选的,。

15、所述根据所述BODY节点及其子节点的变化,对所述BODY节点及其子节点进行检测,获得所述BODY节点及其子节点变化后的节点内容,还包括0017统计所述BODY节点及其子节点中发生变化的非链接文字的总数量值;0018当所述总数量值大于预设数量值时,检测所述BODY节点及其子节点,获得所述BODY节点及其子节点变化后的节点内容。0019在可选方案中,对于一些微小的网页变化,不会触发重新检测其BODY节点及其子节点,除非有大量的非链接文字发生了变化,才会进行重新检测。这样,可以过滤掉大部分无效的变化,可以大大地减少因BODY节点及其子节点内容变化触发重新检测的次数,从而提高了对网页内容的检测效率,节。

16、约终端的处理能力。0020可选的,所述统计所述BODY节点及其子节点中发生变化的非链接文字的总数量值,包括0021获取所述BODY节点及其子节点中增加的非链接文字的第一数量值,所述BODY节点及其子节点中减少的非链接文字的第二数量值,以及所述BODY节点及其子节点中可见属性发生变化的非链接文字的第三数量值;0022计算所述第一数量值、第二数量值及第三数量值之和,得到所述总数量值。0023在可选方案中,当有大量的非链接文字发生了变化,才会进行重新检测。这样,可以过滤掉大部分无效的变化,可以大大地减少因BODY节点及其子节点内容变化触发重新检测的次数,从而提高了对网页内容的检测效率,节约终端的处理。

17、能力。0024可选的,所述根据所述BODY节点及其子节点的变化,对所述BODY节点及其子节点进行检测,获得所述BODY节点及其子节点变化后的节点内容,还包括0025当本次触发对所述BODY节点及其子节点的检测后,开始计时;0026当在预设时间内未出现再次触发对所述BODY节点及其子节点的检测时,检测所述BODY节点及其子节点,获得所述BODY节点及其子节点变化后的节点内容。0027在可选方案中,当有大量的非链接文字发生了变化,才会进行重新检测。这样,可以过滤掉大部分无效的变化,可以大大地减少因BODY节点及其子节点内容变化触发重新检测的次数,从而提高了对网页内容的检测效率,节约终端的处理能力。。

18、0028可选的,所述根据所述BODY节点及其子节点的变化,对所述BODY节点及其子节点进行检测,获得所述BODY节点及其子节点变化后的节点内容,还包括0029当在所述预设时间内出现再次触发对所述BODY节点及其子节点的检测时,重新开始计时,直到在所述在预设时间内未出现触发对所述BODY节点及其子节点的检测。0030在可选方案中,通过对相邻两次变化之间的时间间隔时间进行限定,避免在短时间内多次检测BODY节点及其子节点而造成的浏览器的卡顿,进一步减少了检测次数,提高了对网页内容的检测效率,节约终端的处理能力。0031可选的,所述根据所述所述BODY节点及其子节点变化后的节点内容确定所述网页变化后。

19、的预览内容,并对所述变化后的预览内容进行显示,包括0032当确定所述网页变化后存在预览内容时,在所述网页上显示所述预览模式图标;0033当接收到对所述预览模式图标的选定操作时,显示所述变化后的预览内容;0034或者,说明书CN104199915A3/11页70035当确定所述网页变化后不存在预览内容时,在所述网页上隐藏所述预览模式图标。0036在可选方案中,如果网页变化后存在预览内容,则在网页上显示预览模式图标,提示用户可以采用阅读模式;如果网页变化后不存在预览内容,则在网页上隐藏预览模式图标,提示用户无法采用阅读模式。这样,通过是否显示预览模式图标来提示用户网页发生变化,使得用户可以更准确地。

20、使用阅读模式浏览网页,用户体验度较好。0037根据本公开实施例的第二方面,提供一种网页变化检测装置,包括0038监测模块,用于监测网页的DOM树中的BODY节点及其子节点的变化;0039检测模块,用于根据所述BODY节点及其子节点的变化,对所述BODY节点及其子节点进行检测,获得所述BODY节点及其子节点变化后的节点内容;0040确定模块,用于根据所述所述BODY节点及其子节点变化后的节点内容确定所述网页变化后的预览内容;0041显示模块,用于对所述变化后的预览内容进行显示。0042可选的,所述监测模块,用于监测对所述BODY节点及其子节点的DOM操作;0043所述检测模块包括0044触发子模。

21、块,用于当监测到对所述BODY节点及其子节点的DOM操作结束后,触发对所述BODY节点及其子节点的检测;0045检测子模块,用于检测所述BODY节点及其子节点,获得所述BODY节点及其子节点变化后的节点内容。0046可选的,所述检测模块还包括0047统计子模块,用于统计所述BODY节点及其子节点中发生变化的非链接文字的总数量值;0048所述检测子模块,用于当所述总数量值大于预设数量值时,检测所述BODY节点及其子节点,获得所述BODY节点及其子节点变化后的节点内容。0049可选的,所述统计子模块,用于获取所述BODY节点及其子节点中增加的非链接文字的第一数量值,所述BODY节点及其子节点中减少。

22、的非链接文字的第二数量值,以及所述BODY节点及其子节点中可见属性发生变化的非链接文字的第三数量值;计算所述第一数量值、第二数量值及第三数量值之和,得到所述总数量值。0050可选的,所述检测模块还包括0051计时模块,用于当本次触发对所述BODY节点及其子节点的检测后,开始计时;0052所述检测子模块,用于当在预设时间内未出现再次触发对所述BODY节点及其子节点的检测时,检测所述BODY节点及其子节点,获得所述BODY节点及其子节点变化后的节点内容。0053可选的,所述检测子模块,还用于当在所述预设时间内出现再次触发对所述BODY节点及其子节点的检测时,重新开始计时,直到在所述在预设时间内未出。

23、现触发对所述BODY节点及其子节点的检测。0054可选的,所述显示模块,用于当确定所述网页变化后存在预览内容时,在所述网页上显示所述预览模式图标;当接收到对所述预览模式图标的选定操作时,显示所述变化后的预览内容;或者,当确定所述网页变化后不存在预览内容时,在所述网页上隐藏所述预览说明书CN104199915A4/11页8模式图标。0055根据本公开实施例的第三方面,提供一种网页变化检测装置,包括0056处理器;0057用于存储处理器可执行指令的存储器;0058其中,所述处理器被配置为0059监测网页的DOM树中的BODY节点及其子节点的变化;0060根据所述BODY节点及其子节点的变化,对所述。

24、BODY节点及其子节点进行检测,获得所述BODY节点及其子节点变化后的节点内容;0061根据所述所述BODY节点及其子节点变化后的节点内容确定所述网页变化后的预览内容,并对所述变化后的预览内容进行显示。0062应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。附图说明0063此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理。0064图1是根据一示例性实施例示出的一种网页变化检测方法的流程图;0065图2是根据另一示例性实施例示出的一种网页变化检测方法的流程图;0066图3是根据另一示例性实施例示出的一。

25、种网页变化检测方法的流程图;0067图4是根据另一示例性实施例示出的一种网页变化检测方法的流程图;0068图5是根据另一示例性实施例示出的一种网页变化检测方法的流程图;0069图6是根据一示例性实施例示出的一种网页变化检测装置的框图;0070图7是根据一示例性实施例示出的检测模块的框图;0071图8是根据一示例性实施例示出的一种用于网页变化检测的装置800的框图。具体实施方式0072这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本公开相一致的所有实施方式。相反,它。

26、们仅是与如所附权利要求书中所详述的、本公开的一些方面相一致的装置和方法的例子。0073图1是根据一示例性实施例示出的一种网页变化检测方法的流程图,如图1所示,网页变化检测方法用于终端中,包括以下步骤。0074在步骤S11中,监测网页的DOM树中的BODY节点及其子节点的变化;0075在步骤S12中,根据BODY节点及其子节点的变化,对BODY节点及其子节点进行检测,获得BODY节点及其子节点变化后的节点内容;0076在步骤S13中,根据BODY节点及其子节点变化后的节点内容确定网页变化后的预览内容,并对变化后的预览内容进行显示。0077本实施例中,通过对网页的DOM树中的BODY节点及其子节点。

27、进行检查,根据其变化重新生成阅读模式下的预览内容,使得阅读模式下的预览内容能够随网页内容变化而自说明书CN104199915A5/11页9适应地变化。这样,使得在阅读模式下,可以更加准确地展示网页的预览内容,提高用户体验度。0078图2是根据另一示例性实施例示出的一种网页变化检测方法的流程图,如图2所示,可选的,上述步骤S11包括0079在步骤S21中,监测对BODY节点及其子节点的DOM操作;0080上述步骤S12包括0081在步骤S22中,当监测到对BODY节点及其子节点的DOM操作结束后,触发对BODY节点及其子节点的检测;0082在步骤S23中,检测所述BODY节点及其子节点,获得BO。

28、DY节点及其子节点变化后的节点内容。0083例如,可以给BODY节点及其子节点添加一个变动观察器MUTATIONOBSERVER,这个MUTATIONOBSERVER是JAVASCRIPT中监视DOM变动的接口,当DOM对象树发生任何变动的时候,MUTATIONOBSERVER会得到通知。在DOM发生变动以后,并不会马上触发相应的事件,而是要等到当前所有DOM操作都结束后才触发相应的事件。举例来说,如果在文档中连续插入1000个段落P元素,就会连续触发1000个插入事件,执行每个事件的回调函数,这很可能造成浏览器的卡顿。但是,MUTATIONOBSERVER只在1000个段落都插入结束后才会触。

29、发插入事件,而且只触发一次。0084在可选方案中,在BODY节点及其子节点的DOM操作结束后,才触发对BODY节点及其子节点的检测,可以大大地减少因BODY节点及其子节点内容变化触发重新检测的次数,避免浏览器出现卡顿现象,提高了对网页关键内容的检测效率,节约终端的处理能力。0085图3是根据另一示例性实施例示出的一种网页变化检测方法的流程图,如图3所示,可选的,上述步骤S12还包括0086在步骤S31中,统计BODY节点及其子节点中发生变化的非链接文字的总数量值;0087在步骤S32中,当总数量值大于预设数量值时,检测BODY节点及其子节点,获得BODY节点及其子节点变化后的节点内容。0088。

30、阅读模式有一个很大的特性就是包含的非链接的文字比较多,这样,可以统计BODY节点及其子节点中发生变化的非链接文字的总数量值,如果总数量值小于或等于预设的最小变化值,也就是说发生变化的非链接文字数量较少,则不需要重新检测BODY节点及其子节点,否则重新检测BODY节点及其子节点。0089在可选方案中,对于一些微小的网页变化,不会触发重新检测其BODY节点及其子节点,除非有大量的非链接文字发生了变化,才会进行重新检测。这样,可以过滤掉大部分无效的变化,可以大大地减少因BODY节点及其子节点内容变化触发重新检测的次数,从而提高了对网页内容的检测效率,节约终端的处理能力。0090图4是根据另一示例性实。

31、施例示出的一种网页变化检测方法的流程图,如图4所示,可选的,上述步骤S31包括0091在步骤S41中,获取BODY节点及其子节点中增加的非链接文字的第一数量值,BODY节点及其子节点中减少的非链接文字的第二数量值,以及BODY节点及其子节点中可见属性发生变化的非链接文字的第三数量值;0092在步骤S42中,计算第一数量值、第二数量值及第三数量值之和,得到总数量值。说明书CN104199915A6/11页100093例如,BODY节点及其子节点中增加的非链接文字的数量为A,BODY节点及其子节点中减少的非链接文字的数量为R,BODY节点及其子节点中可见属性发生变化如从可见变为不可见,或者从不可见。

32、变为可见的非链接文字数量为V,如果A、R、V之和大于预设的最小变化值,则检测BODY节点及其子节点,获得BODY节点及其子节点变化后的节点内容。0094在可选方案中,当有大量的非链接文字发生了变化,才会进行重新检测。这样,可以过滤掉大部分无效的变化,可以大大地减少因BODY节点及其子节点内容变化触发重新检测的次数,从而提高了对网页内容的检测效率,节约终端的处理能力。0095图5是根据另一示例性实施例示出的一种网页变化检测方法的流程图,如图5所示,可选的,上述步骤S12还包括0096在步骤S51中,当本次触发对BODY节点及其子节点的检测后,开始计时;0097在步骤S52中,当在预设时间内未出现。

33、再次触发对BODY节点及其子节点的检测时,检测BODY节点及其子节点,获得BODY节点及其子节点变化后的节点内容。0098可选的,上述步骤S12还包括在步骤S53中,当在预设时间内出现再次触发对BODY节点及其子节点的检测时,重新开始计时,直到在在预设时间内未出现触发对BODY节点及其子节点的检测。0099当网页的内容在较短时间内多次发生变化,即便每次变化都是所有DOM操作都结束后才触发检测操作的,仍然使得浏览器在短时间内多次执行检测操作,容易造成浏览器的卡顿。因此,对相邻两次变化之间的时间间隔时间进行及时,如果相邻两次变化之间的时间间隔很近,则等在后的变化完成后,再进行对BODY节点及其子节。

34、点的检测。0100例如,可以进一步添加一个定时器,设定一个预设时间为N毫秒,在检测操作被触发后,开始计时,如果在N毫秒内,检测操作又一次被触发,则重置定时器,重新开始计时,直到在N毫秒内,检测操作没有被触发,则执行对BODY节点及其子节点的检测。0101在可选方案中,通过对相邻两次变化之间的时间间隔时间进行限定,避免在短时间内多次检测BODY节点及其子节点而造成的浏览器的卡顿,进一步减少了检测次数,提高了对网页内容的检测效率,节约终端的处理能力。0102可选的,上述步骤S13包括0103当确定所述网页变化后存在预览内容时,在所述网页上显示所述预览模式图标;0104当接收到对所述预览模式图标的选。

35、定操作时,显示所述变化后的预览内容;0105或者,0106当确定所述网页变化后不存在预览内容时,在所述网页上隐藏所述预览模式图标。0107在可选方案中,如果网页变化后存在预览内容,则在网页上显示预览模式图标,提示用户可以采用阅读模式;如果网页变化后不存在预览内容,则在网页上隐藏预览模式图标,提示用户无法采用阅读模式。这样,通过是否显示预览模式图标来提示用户网页发生变化,使得用户可以更准确地使用阅读模式浏览网页,用户体验度较好。0108可选的,确定网页中是否存在预览内容,可以采用以下方式。0109对网页的网页文档进行解析后,可以生成DOM树和RENDER树,由RENDER树确定DOM树中的各个可。

36、见节点,并确定各可见节点的预览值;依据各可见节点的预览值确定网页中的预览内容。说明书CN104199915A107/11页110110DOM树中存储有由对网页文档进行解析而得到的各个节点,例如,DOM树的根节点是文件DOCUMENT对象,即对网页文档进行操作的入口;又如,DOM树中的一类子节点是文本TEXT对象,即网页文档中的一些文本内容。0111有上述内容可知,DOM树中具备不同类型的节点,而各类型的节点在网页文档中的作用也各不相同,因此,DOM树中的一部分节点对应的内容可以在网页中显示出来,如表示TEXT对象的节点,另一部分节点对应的内容不能在网页中进行显示,如表示DOCUMENT对象的根。

37、节点。0112若节点对应的内容可以在网页中显示,则将该节点作为可见节点,即可见节点是在网页中显示的内容对应的节点;若节点对应的内容不能在网页中显示,则将该节点作为不可见节点。0113页面渲染时,RENDER树负责记录DOM树中的可见节点在页面中的估计显示位置,因此,对于DOM树中的各个节点,可以通过查询RENDER树来确定以确定该节点是否可见,从而确定DOM树中的各个可见节点。0114网页中包含各种各样的信息,如标题、正文、图片和链接等,因此对于DOM树中的可见节点,由于其在网页文档中表征的具体内容不同。本公开实施例可以依据网页重新布局时的需求,为各可见节点配置相应的预览值。所述预览值可以依据。

38、所述节点所表征的内容的类型,如图片、文字等进行配置,也可以依据各可见节点在网页中表征的具体内容产生相应的预览值。0115例如,重新布局时着重显示页面中的图片,则与图片相关的标签可以配置较高的预览值。又如,重新布局时着重显示页面中的文字内容,则与标题、正文相关的标签可以配置较高的预览值,或可以根据文字的多少确定预览值得高低。0116获取到预览内容后,就获取到了重新布局所要显示的内容,因此可以显示该预览内容。依据各可见节点的预览值确定网页中的预览内容例如,可以设定一个预览值的标准,凡是预览值达到该标准的可见节点,其对应的内容都可以设为预览内容。又如,可以仅将预览值最高的可见节点对应的内容作为预览内。

39、容。0117在可选方案中,可以获取DOM树和RENDER树,并确定DOM树中的可见节点,再依据具体的需求,由各可见节点的标签确定对应可见节点的预览值,最终确定网页中的预览内容,预览内容可以是依据需求而从网页中提取的关键内容,从而可以较小的移动终端的屏幕中显示关键内容,方便用户查看、阅读网页的内容,减少浏览时间。0118图6是根据一示例性实施例示出的一种网页变化检测装置的框图。如图6所示,该装置包括监测模块61,检测模块62,确定模块63和显示模块64。0119监测模块61被配置为监测网页的DOM树中的BODY节点及其子节点的变化;0120检测模块62被配置为根据所述BODY节点及其子节点的变化。

40、,对所述BODY节点及其子节点进行检测,获得所述BODY节点及其子节点变化后的节点内容;0121确定模块63被配置为根据所述所述BODY节点及其子节点变化后的节点内容确定所述网页变化后的预览内容;0122显示模块64被配置为对所述变化后的预览内容进行显示。0123可选的,监测模块被配置为监测对所述BODY节点及其子节点的DOM操作。图7是根据一示例性实施例示出的检测模块的框图。如图7所示,所述检测模块62包括说明书CN104199915A118/11页120124触发子模块71被配置为当监测到对所述BODY节点及其子节点的DOM操作结束后,触发对所述BODY节点及其子节点的检测;0125检测子。

41、模块72被配置为检测所述BODY节点及其子节点,获得所述BODY节点及其子节点变化后的节点内容。0126可选的,所述检测模块62还包括0127统计子模块73被配置为统计所述BODY节点及其子节点中发生变化的非链接文字的总数量值;0128所述检测子模块72被配置为当所述总数量值大于预设数量值时,检测所述BODY节点及其子节点,获得所述BODY节点及其子节点变化后的节点内容。0129可选的,所述统计子模块73被配置为获取所述BODY节点及其子节点中增加的非链接文字的第一数量值,所述BODY节点及其子节点中减少的非链接文字的第二数量值,以及所述BODY节点及其子节点中可见属性发生变化的非链接文字的第。

42、三数量值;计算所述第一数量值、第二数量值及第三数量值之和,得到所述总数量值。0130可选的,所述检测模块62还包括0131计时模块74被配置为当本次触发对所述BODY节点及其子节点的检测后,开始计时;0132所述检测子模块72被配置为当在预设时间内未出现再次触发对所述BODY节点及其子节点的检测时,检测所述BODY节点及其子节点,获得所述BODY节点及其子节点变化后的节点内容。0133可选的,所述检测子模块62还被配置为当在所述预设时间内出现再次触发对所述BODY节点及其子节点的检测时,重新开始计时,直到在所述在预设时间内未出现触发对所述BODY节点及其子节点的检测。0134可选的,所述显示模。

43、块64被配置为当确定所述网页变化后存在预览内容时,在所述网页上显示所述预览模式图标;当接收到对所述预览模式图标的选定操作时,显示所述变化后的预览内容;或者,当确定所述网页变化后不存在预览内容时,在所述网页上隐藏所述预览模式图标。0135关于上述实施例中的装置,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。0136本实施例的装置,通过对网页的DOM树中的BODY节点及其子节点进行检查,根据其变化重新生成阅读模式下的预览内容,使得阅读模式下的预览内容能够随网页内容变化而自适应地变化。这样,使得在阅读模式下,可以更加准确地展示网页的预览内容,提高用户。

44、体验度。0137本公开还提供一种网页变化检测装置,包括0138处理器;0139用于存储处理器可执行指令的存储器;0140其中,所述处理器被配置为0141监测网页的DOM树中的BODY节点及其子节点的变化;0142根据所述BODY节点及其子节点的变化,对所述BODY节点及其子节点进行检测,获得所述BODY节点及其子节点变化后的节点内容;说明书CN104199915A129/11页130143根据所述所述BODY节点及其子节点变化后的节点内容确定所述网页变化后的预览内容,并对所述变化后的预览内容进行显示。0144图8是根据一示例性实施例示出的一种用于网页变化检测的装置800的框图。例如,装置800。

45、可以是移动电话,计算机,数字广播终端,消息收发设备,游戏控制台,平板设备,医疗设备,健身设备,个人数字助理等。0145如图8所示,装置800可以包括以下一个或多个组件处理组件802,存储器804,电源组件806,多媒体组件808,音频组件810,输入/输出I/O的接口812,传感器组件814,以及通信组件816。0146处理组件802通常控制装置800的整体操作,诸如与显示,电话呼叫,数据通信,相机操作和记录操作相关联的操作。处理组件802可以包括一个或多个处理器820来执行指令,以完成上述的方法的全部或部分步骤。此外,处理组件802可以包括一个或多个模块,便于处理组件802和其他组件之间的交。

46、互。例如,处理组件802可以包括多媒体模块,以方便多媒体组件808和处理组件802之间的交互。0147存储器804被配置为存储各种类型的数据以支持在设备800的操作。这些数据的示例包括用于在装置800上操作的任何应用程序或方法的指令,联系人数据,电话簿数据,消息,图片,视频等。存储器804可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器SRAM,电可擦除可编程只读存储器EEPROM,可擦除可编程只读存储器EPROM,可编程只读存储器PROM,只读存储器ROM,磁存储器,快闪存储器,磁盘或光盘。0148电源组件806为装置800的各种组件提供电力。电源组件806可。

47、以包括电源管理系统,一个或多个电源,及其他与为装置800生成、管理和分配电力相关联的组件。0149多媒体组件808包括在所述装置800和用户之间的提供一个输出接口的屏幕。在一些实施例中,屏幕可以包括液晶显示器LCD和触摸面板TP。如果屏幕包括触摸面板,屏幕可以被实现为触摸屏,以接收来自用户的输入信号。触摸面板包括一个或多个触摸传感器以感测触摸、滑动和触摸面板上的手势。所述触摸传感器可以不仅感测触摸或滑动动作的边界,而且还检测与所述触摸或滑动操作相关的持续时间和压力。在一些实施例中,多媒体组件808包括一个前置摄像头和/或后置摄像头。当设备800处于操作模式,如拍摄模式或视频模式时,前置摄像头和。

48、/或后置摄像头可以接收外部的多媒体数据。每个前置摄像头和后置摄像头可以是一个固定的光学透镜系统或具有焦距和光学变焦能力。0150音频组件810被配置为输出和/或输入音频信号。例如,音频组件810包括一个麦克风MIC,当装置800处于操作模式,如呼叫模式、记录模式和语音识别模式时,麦克风被配置为接收外部音频信号。所接收的音频信号可以被进一步存储在存储器804或经由通信组件816发送。在一些实施例中,音频组件810还包括一个扬声器,用于输出音频信号。0151I/O接口812为处理组件802和外围接口模块之间提供接口,上述外围接口模块可以是键盘,点击轮,按钮等。这些按钮可包括但不限于主页按钮、音量按。

49、钮、启动按钮和锁定按钮。0152传感器组件814包括一个或多个传感器,用于为装置800提供各个方面的状态评估。例如,传感器组件814可以检测到设备800的打开/关闭状态,组件的相对定位,例如所述组件为装置800的显示器和小键盘,传感器组件814还可以检测装置800或装置800说明书CN104199915A1310/11页14一个组件的位置改变,用户与装置800接触的存在或不存在,装置800方位或加速/减速和装置800的温度变化。传感器组件814可以包括接近传感器,被配置用来在没有任何的物理接触时检测附近物体的存在。传感器组件814还可以包括光传感器,如CMOS或CCD图像传感器,用于在成像应用中使用。在一些实施例中,该传感器组件814还可以包括加速度传感器,陀螺仪传感器,磁传感器,压力传感器或温度传感器。0153通信组件816被配置为便于装置800和其他设备之间有线或无线方式的通信。装置800可以接入基于通信标准的无线网络,如WIFI,2G或3G,或它们的组合。在一个示例性实施例中,通信组件816经由广播信道接收来自外部广播管理系统的广播信号或广播相关信息。在一个示例性实施例中,所述通信组件816还包括近场通信NFC模块,以促进短程通信。例如,在NFC模块可基于射频识别RFID技术,红外数据协会IRDA技术,超宽带UWB技术,蓝牙BT技术和其他技术来实现。0154在示例性实施例中。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 物理 > 计算;推算;计数


copyright@ 2017-2020 zhuanlichaxun.net网站版权所有
经营许可证编号:粤ICP备2021068784号-1