一种DOM渲染网页的方法、装置、终端和存储介质制造方法及图纸

技术编号:20723809 阅读:42 留言:0更新日期:2019-03-30 17:27
本公开是关于一种DOM渲染网页的方法、装置、终端和存储介质,属于终端技术领域。所述方法包括:在目标应用对应的模板中增加类型为逻辑虚拟类型的第一DOM节点;在所述模板的每个第一DOM节点中增加内部属性;当所述目标应用运行时,根据所述每个第一DOM的类型和内部属性,编译所述模板,得到JavaScript端的第一DOM树;当所述目标应用渲染网页时,根据所述第一DOM树,对所述目标应用的静态页面布局进行渲染。由于在JavaScript端生成了第一DOM树,且第一DOM树中包含用于渲染的节点和用于逻辑控制的节点,从而JavaScript端可以直接基于本端的第一DOM树即可完成网页渲染,降低了开发和维护成本,提高了渲染效率。

【技术实现步骤摘要】
一种DOM渲染网页的方法、装置、终端和存储介质
本公开涉及终端
,尤其涉及一种DOM渲染网页的方法、装置、终端和存储介质。
技术介绍
当前终端中一般都安装浏览器,用户可以通过浏览器访问网页来浏览丰富多彩的内容。在用户通过浏览器访问网页时,终端从服务器中获取该网页的网页数据,根据该网页数据,通过DOM(DocumentObjectModel,操作文档对象)树来渲染网页内容。目前浏览器自身的DOM树中包括用于静态页面的布局与绘制的节点,网页渲染的逻辑控制代码在JavaScript端。JavaScript通过该逻辑控制代码操作该浏览器端的DOM树来驱动网页数据,以进行网页渲染。
技术实现思路
本公开提供一种DOM渲染网页的方法、装置、终端和存储介质,可以解决通过JavaScript操作目标应用端的DOM树,导致开发和维护成本较高,以及渲染效率低的问题。所述技术方案如下。根据本公开实施例的第一方面,提供一种DOM渲染网页的方法,所述方法包括:在目标应用对应的模板中增加类型为逻辑虚拟类型的第一DOM节点,所述模板基于传统DOM架构实现,所述用于逻辑虚拟类型的第一DOM节点用于存储逻辑控制信息本文档来自技高网...

【技术保护点】
1.一种DOM渲染网页的方法,其特征在于,所述方法包括:在目标应用对应的模板中增加类型为逻辑虚拟类型的第一DOM节点,所述模板基于传统DOM架构实现,所述用于逻辑虚拟类型的第一DOM节点用于存储逻辑控制信息;在所述模板的每个第一DOM节点中增加内部属性,所述内部属性用于标识所述第一DOM节点是否参与布局和渲染;当所述目标应用运行时,根据所述每个第一DOM的类型和内部属性,编译所述模板,得到JavaScript端的第一DOM树,所述第一DOM树包含用于渲染的节点和用于逻辑控制的节点;当所述目标应用渲染网页时,根据所述第一DOM树,对所述目标应用的静态页面布局进行渲染。

【技术特征摘要】
1.一种DOM渲染网页的方法,其特征在于,所述方法包括:在目标应用对应的模板中增加类型为逻辑虚拟类型的第一DOM节点,所述模板基于传统DOM架构实现,所述用于逻辑虚拟类型的第一DOM节点用于存储逻辑控制信息;在所述模板的每个第一DOM节点中增加内部属性,所述内部属性用于标识所述第一DOM节点是否参与布局和渲染;当所述目标应用运行时,根据所述每个第一DOM的类型和内部属性,编译所述模板,得到JavaScript端的第一DOM树,所述第一DOM树包含用于渲染的节点和用于逻辑控制的节点;当所述目标应用渲染网页时,根据所述第一DOM树,对所述目标应用的静态页面布局进行渲染。2.根据权利要求1所述的方法,其特征在于,所述根据所述每个第一DOM的类型和内部属性,编译所述模板,得到JavaScript端的第一DOM树,所述第一DOM树包含用于渲染的节点和用于逻辑控制的节点,包括:根据所述每个第一DOM节点的类型,实例化所述每个第一DOM节点,得到每个第二DOM节点;根据所述每个第一DOM节点的内部属性,将所述每个第二DOM节点插入所述模板中;将所述模板的每个第二DOM节点进行初始化,得到所述JavaScript端的第一DOM树。3.根据权利要求2所述的方法,其特征在于,所述根据所述每个第一DOM节点的类型,实例化所述每个第一DOM节点,得到每个第二DOM节点,包括:对于每个第一DOM节点,当所述第一DOM节点的类型为渲染类型时,创建所述渲染类型的第二DOM节点,所述渲染类型的第二DOM为传统DOM架构中的原生节点,且用于参与渲染;当所述第一DOM节点的类型为逻辑虚拟类型时,创建所述逻辑虚拟类型的第二DOM节点,所述逻辑虚拟类型的第二DOM节点用于进行逻辑控制。4.根据权利要求2所述的方法,其特征在于,所述根据所述每个第一DOM节点的内部属性,将所述每个第二DOM节点插入所述模板中,包括:对于每个第一DOM节点,根据所述第一DOM节点的第一内部属性,确定所述第一DOM节点是否参与布局;当所述第一DOM节点参与布局时,将所述第一DOM节点对应的第二DOM节点插入到模板中。5.根据权利要求4所述的方法,其特征在于,所述方法还包括:当所述第一DOM节点参与布局时,根据所述第一DOM节点的第二内部属性,确定所述第一DOM节点是否参与渲染;当所述第一DOM节点参与渲染时,将所述第一DOM节点对应的第二DOM节点的节点标识存储到缓存消息队列中;根据所述缓存消息队列,构建本地应用端的第二DOM树,所述第二DOM树用于构建所述静态界面布局。6.根据权利要求5所述的方法,其特征在于,所述方法还包括:当所述第一DOM节点不参与渲染时,根据所述第一DMO节点的子节点的控制逻辑,确定所述第一DMO节点的子节点是否满足逻辑控制条件;当所述第一DMO节点的子节点满足逻辑控制条件时,将所述第一DMO节点的子节点插入所述模板。7.根据权利要求2所述的方法,其特征在于,所述将所述模板的每个第二DOM节点进行初始化,得到所述JavaScript端的第一DOM树,包括:对于所述每个第二DOM节点,当所述第二DOM节点的类型为渲染类型时,建立包括所述第二DOM节点的组件与组件信息的绑定关系;当所述第二DOM节点的类型为逻辑虚拟类型时,根据所述第二DOM节点的控制逻辑,建立逻辑控制机制;根据所述每个第二DOM节点、所述绑定关系和所述逻辑控制机制,生成所述第一DOM树。8.一种DOM渲染网页的装置,其特征在于,所述装置包括:第一添加模块,被配置为在目标应用对应的模板中增加类型为逻辑虚拟类型的第一DOM节点,所述模板基于传统DOM架构实现,所述用于逻辑虚拟类型的第一DOM节点用于存储逻辑控制信息;第二添加模块,被配置为在所述模板的每个第一DOM节点中增加内部属性,...

【专利技术属性】
技术研发人员:董永清沈妮
申请(专利权)人:北京小米移动软件有限公司
类型:发明
国别省市:北京,11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1