[发明专利]DOM树生成方法以及相关设备有效
申请号: | 201710905138.X | 申请日: | 2017-09-28 |
公开(公告)号: | CN107609175B | 公开(公告)日: | 2021-01-29 |
发明(设计)人: | 吴斐然;怀宝兴 | 申请(专利权)人: | 华为技术有限公司 |
主分类号: | G06F16/901 | 分类号: | G06F16/901;G06F16/904 |
代理公司: | 广州三环专利商标代理有限公司 44202 | 代理人: | 郝传鑫;熊永强 |
地址: | 518129 广东*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | dom 生成 方法 以及 相关 设备 | ||
本发明实施例提供了一种文档对象模型树生成方法以及相关设备。所述方法包括:确定可缩放矢量图形SVG节点的遍历顺序,其中,所述SVG节点对应在浏览器页面绘制的关系图中的元素,所述元素包括图节点以及与其连接的边,度比较小的图节点对应的SVG节点的遍历顺序比度比较大的图节点对应的SVG节点的遍历顺序靠前;根据所述SVG节点的遍历顺序生成SVG子树,其中,所述SVG子树的遍历顺序和所述SVG节点的遍历顺序是一致的,所述SVG子树为所述文档对象模型DOM树中的子树。上述方法能够生成触发重排的平均代价较小的根据绘制有关系图的浏览器页面生成的DOM树。
技术领域
本发明涉及数据结构领域,尤其涉及一种DOM树生成方法以及相关设备。
背景技术
关系图通常用于表示多个实体之间的关系,例如,社交网络关系图、万维网络关系图等等,此处不作具体限制。常见的关系图包括节点链接图和邻接矩阵图等等,为了陈述简便,下文中均以节点链接图为例进行说明。如图1所示,节点链接图是由图节点110以及边120构成。图节点110用于表示对应的实体,边120用于表示实体之间的关系。例如,节点链接图应用于描述社交网络的关系时,图节点可以用于表示用户(例如,Tom和Alisa),边可以用于表示用户之间的关系(例如,表示Tom和Alisa是相识的)。节点链接图因其直观、简洁的特点,尤其适用于实体数量众多,并且,实体之间的关系复杂的场景。但是,随着互联网的快速发展,社交网络和万维网络的发展呈现指数级增长,关系图的规模通常在千节点/边级别,甚至可以达到万节点/边级别,即,关系图中图节点和边的数量可以是数以千计或者数以万计。为了便于对关系图进行分析,用户通常可以在浏览器页面上绘制关系,以便于各个分析方参与进行分析。
但是,本领域的技术人员在长期研究之下发现,如何为绘制有关系图的浏览器页面生成触发重排的平均代价较小的DOM树是一个尚未得到解决的难题。
发明内容
本发明实施例提供一种DOM树生成方法以及相关设备,能够生成触发重排的平均代价较小的DOM树。
第一方面,提供了一种文档对象模型树生成方法,包括:
确定可缩放矢量图形SVG节点的遍历顺序,其中,所述SVG节点对应在浏览器页面绘制的关系图中的元素,所述元素包括图节点以及与其连接的边,度比较小的图节点对应的SVG节点的遍历顺序比度比较大的图节点对应的SVG节点的遍历顺序靠前;
根据所述SVG节点的遍历顺序生成SVG子树,其中,所述SVG子树的遍历顺序和所述SVG节点的遍历顺序是一致的,所述SVG子树为所述文档对象模型DOM树中的子树。
结合第一方面,在一些可能的实施方式中,所述SVG子树挂载在所述DOM树中除所述SVG子树之外遍历顺序最靠后的一个节点上。
结合第一方面,在一些可能的实施方式中,与度比较小的图节点相连接的边的遍历顺序比与度比较大的图节点相连接的边的遍历顺序靠前。
结合第一方面,在一些可能的实施方式中,所述图节点对应的SVG节点的遍历顺序比与其相连的边对应的SVG节点的遍历顺序靠前。
结合第一方面,在一些可能的实施方式中,所述SVG子树还包括SVG根节点,其中,
所述图节点对应的SVG节点挂载在所述SVG根节点上,与所述图节点相连的边对应的SVG节点挂载在所述图节点对应的SVG节点上;或者,所述图节点对应的SVG节点挂载在所述SVG根节点上,与所述图节点相连的边对应的SVG节点也挂载在所述SVG根节点上。
第二方面,提供了一种DOM树生成装置,包括:确定模块以及生成模块,
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于华为技术有限公司,未经华为技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201710905138.X/2.html,转载请声明来源钻瓜专利网。