一种焦点页面的查找方法及装置制造方法及图纸

技术编号:24798757 阅读:19 留言:0更新日期:2020-07-07 20:55
本发明专利技术公开了一种焦点页面的查找方法及装置,获取包含父页面和父页面包含的各个子页面的待查找页面集,基于待查找页面集中每个页面的HTML文件生成该页面对应的DOM树,得到DOM树集,基于每个页面的JS文件生成该页面对应的虚拟语法树,得到虚拟语法树集,将每个DOM树中具备焦点功能的节点作为该DOM树在待查找页面集中对应的页面的焦点元素,将虚拟语法树集存在按键响应事件的虚拟语法树在待查找页面集中对应的页面进行标记,从而基于待查找页面集中每个页面的焦点元素以及标记,确定焦点页面。本发明专利技术基于每个页面的焦点元素以及按键响应事件来查找焦点页面,保证确定的焦点页面为实际的焦点页面,解决了现有技术中的问题。

【技术实现步骤摘要】
一种焦点页面的查找方法及装置
本专利技术涉及互联网
,更具体的说,涉及一种焦点页面的查找方法及装置。
技术介绍
焦点页面是指当前正在活动的页面,主要负责响应按键事件,包括:移动焦点(方向键)、字符键入(字母/数字键)、退出页面(退出/返回键)、确定键、翻页键等。现有方案通常将父页面选为焦点页面,若某一个前端页面本申请设置有window.focus,则将该前端页面选为焦点页面。但是,很多情况下,现有方案所选取的焦点页面并不是实际的焦点页面,其中,实际的焦点页面指的是能够响应按键事件的页面,因此,可能带来如下问题:1、导致首焦点不在用户期望的位置上,需要多次移动焦点才能到达正确位置22、任何按键事件均不响应,无法与用户进行交互。
技术实现思路
有鉴于此,本专利技术公开一种焦点页面的查找方法及装置,以实现通过构建每个页面的DOM树和虚拟语法树,来确定每个页面的焦点元素以及按键响应事件,从而基于每个页面的焦点元素以及按键响应事件来查找焦点页面,保证确定的焦点页面为实际的焦点页面,解决现有技术中因确定的焦点页面不是实际的焦点页面而带来的问题。一种焦点页面的查找方法,包括:获取待查找页面集,所述待查找页面集包括:父页面和所述父页面包含的各个子页面;基于所述待查找页面集中每个页面的HTML文件生成该页面相对应的DOM树,得到DOM树集,所述页面为所述父页面或所述子页面;选取所述DOM树集中每个所述DOM树中具备焦点功能的节点作为该DOM树在所述待查找页面集中对应的页面的焦点元素;基于所述待查找页面集中每个所述页面的JS文件生成该页面相对应的虚拟语法树,得到虚拟语法树集;将所述虚拟语法树集存在按键响应事件的虚拟语法树在所述待查找页面集中对应的页面进行标记;基于所述待查找页面集中每个所述页面的所述焦点元素以及所述标记,查找焦点页面。可选的,所述基于所述待查找页面集中每个页面的HTML文件生成该页面相对应的DOM树,得到DOM树集的过程,具体包括:获取所述页面的HTML文件;将所述HTML文件中的每个字节数据转化为相对应的字符;采用词法分析器将每个所述字符标记成对应的词语;采用语法分析器将每个所述词语构建成HTML元素的节点;将所述HTML元素的各个节点进行组建,生成所述页面相对应的DOM树;将所述待查找页面集中每个页面相对应的DOM树进行集合,得到所述DOM树集。可选的,所述基于所述待查找页面集中每个所述页面的JS文件生成该页面相对应的虚拟语法树,得到虚拟语法树集的过程,具体包括:获取所述页面的JS文件;采用词法分析器将JS文件中的每个javascript脚本标记成对应的词语;采用语法分析器将每个所述词语构建成javascript脚本的节点;将所述javascript脚本的的各个节点进行组建,生成所述页面相对应的虚拟语法树;将所述待查找页面集中每个页面相对应的虚拟语法树进行集合,得到所述虚拟语法树集。可选的,还包括:当所述待查找页面集中存在第一页面时,将所述第一页面对应的虚拟语法树确定为空的虚拟语法树,其中,所述第一页面为没有JS文件或HTML文件没有嵌入javascript脚本的页面。可选的,所述基于所述待查找页面集中每个所述页面的所述焦点元素以及所述标记,查找焦点页面,具体包括:当所述父页面不存在所述焦点元素,且仅有所述子页面存在所述焦点元素时,则将第一个查找到的具有所述焦点元素的子页面确定为所述焦点页面;或,当所述父页面存在所述焦点元素,且各个所述子页面均不存在所述焦点元素时,则将所述父页面确定为所述焦点页面;或,当所述父页面和所述子页面同时存在所述焦点元素时,则将所述父页面确定为所述焦点页面;或,当所述父页面和所述子页面均不存在所述焦点元素,且仅有所述父页面存在所述按键响应事件时,则将所述父页面确定为所述焦点页面;或,当所述父页面和所述子页面均不存在所述焦点元素,且仅有所述子页面存在所述按键响应事件时,则将第一个查找到的具有所述按键响应事件的子页面确定为所述焦点页面;或,当所述父页面和所述子页面均不存在所述焦点元素,且所述父页面和所述子页面均存在所述按键响应事件时,则将所述父页面确定为焦点页面;或,当所述父页面和所述子页面均不存在焦点元素和所述按键响应事件时,则不确定所述焦点页面。一种焦点页面的查找装置,包括:获取单元,用于获取待查找页面集,所述待查找页面集包括:父页面和所述父页面包含的各个子页面;第一生成单元,用于基于所述待查找页面集中每个页面的HTML文件生成该页面相对应的DOM树,得到DOM树集,所述页面为所述父页面或所述子页面;选取单元,用于选取所述DOM树集中每个所述DOM树中具备焦点功能的节点作为该DOM树在所述待查找页面集中对应的页面的焦点元素;第二生成单元,用于基于所述待查找页面集中每个所述页面的JS文件生成该页面相对应的虚拟语法树,得到虚拟语法树集;标记单元,用于将所述虚拟语法树集存在按键响应事件的虚拟语法树在所述待查找页面集中对应的页面进行标记;查找单元,用于基于所述待查找页面集中每个所述页面的所述焦点元素以及所述标记,查找焦点页面。可选的,所述第一生成单元具体用于:获取所述页面的HTML文件;将所述HTML文件中的每个字节数据转化为相对应的字符;采用词法分析器将每个所述字符标记成对应的词语;采用语法分析器将每个所述词语构建成HTML元素的节点;将所述HTML元素的各个节点进行组建,生成所述页面相对应的DOM树;将所述待查找页面集中每个页面相对应的DOM树进行集合,得到所述DOM树集。可选的,所述第二生成单元具体用于:获取所述页面的JS文件;采用词法分析器将JS文件中的每个javascript脚本标记成对应的词语;采用语法分析器将每个所述词语构建成javascript脚本的节点;将所述javascript脚本的的各个节点进行组建,生成所述页面相对应的虚拟语法树;将所述待查找页面集中每个页面相对应的虚拟语法树进行集合,得到所述虚拟语法树集。可选的,还包括:确定单元,用于当所述待查找页面集中存在第一页面时,将所述第一页面对应的虚拟语法树确定为空的虚拟语法树,其中,所述第一页面为没有JS文件或HTML文件没有嵌入javascript脚本的页面。可选的,所述查找单元具体用于:当所述父页面不存在所述焦点元素,且仅有所述子页面存在所述焦点元素时,则将第一个查找到的具有所述焦点元素的子页面确定为所述焦点页面;或,当所述父页面存在所述焦点元素,且各个所述子页面均不存在所述焦点元素时,则将所述父页面确定为所述焦点页面;或,当所述父页面和所述子页面同时存在所述焦点元素时,则将所述父页面本文档来自技高网...

【技术保护点】
1.一种焦点页面的查找方法,其特征在于,包括:/n获取待查找页面集,所述待查找页面集包括:父页面和所述父页面包含的各个子页面;/n基于所述待查找页面集中每个页面的HTML文件生成该页面相对应的DOM树,得到DOM树集,所述页面为所述父页面或所述子页面;/n选取所述DOM树集中每个所述DOM树中具备焦点功能的节点作为该DOM树在所述待查找页面集中对应的页面的焦点元素;/n基于所述待查找页面集中每个所述页面的JS文件生成该页面相对应的虚拟语法树,得到虚拟语法树集;/n将所述虚拟语法树集存在按键响应事件的虚拟语法树在所述待查找页面集中对应的页面进行标记;/n基于所述待查找页面集中每个所述页面的所述焦点元素以及所述标记,查找焦点页面。/n

【技术特征摘要】
1.一种焦点页面的查找方法,其特征在于,包括:
获取待查找页面集,所述待查找页面集包括:父页面和所述父页面包含的各个子页面;
基于所述待查找页面集中每个页面的HTML文件生成该页面相对应的DOM树,得到DOM树集,所述页面为所述父页面或所述子页面;
选取所述DOM树集中每个所述DOM树中具备焦点功能的节点作为该DOM树在所述待查找页面集中对应的页面的焦点元素;
基于所述待查找页面集中每个所述页面的JS文件生成该页面相对应的虚拟语法树,得到虚拟语法树集;
将所述虚拟语法树集存在按键响应事件的虚拟语法树在所述待查找页面集中对应的页面进行标记;
基于所述待查找页面集中每个所述页面的所述焦点元素以及所述标记,查找焦点页面。


2.根据权利要求1所述的查找方法,其特征在于,所述基于所述待查找页面集中每个页面的HTML文件生成该页面相对应的DOM树,得到DOM树集的过程,具体包括:
获取所述页面的HTML文件;
将所述HTML文件中的每个字节数据转化为相对应的字符;
采用词法分析器将每个所述字符标记成对应的词语;
采用语法分析器将每个所述词语构建成HTML元素的节点;
将所述HTML元素的各个节点进行组建,生成所述页面相对应的DOM树;
将所述待查找页面集中每个页面相对应的DOM树进行集合,得到所述DOM树集。


3.根据权利要求1所述的查找方法,其特征在于,所述基于所述待查找页面集中每个所述页面的JS文件生成该页面相对应的虚拟语法树,得到虚拟语法树集的过程,具体包括:
获取所述页面的JS文件;
采用词法分析器将JS文件中的每个javascript脚本标记成对应的词语;
采用语法分析器将每个所述词语构建成javascript脚本的节点;
将所述javascript脚本的的各个节点进行组建,生成所述页面相对应的虚拟语法树;
将所述待查找页面集中每个页面相对应的虚拟语法树进行集合,得到所述虚拟语法树集。


4.根据权利要求1所述的查找方法,其特征在于,还包括:
当所述待查找页面集中存在第一页面时,将所述第一页面对应的虚拟语法树确定为空的虚拟语法树,其中,所述第一页面为没有JS文件或HTML文件没有嵌入javascript脚本的页面。


5.根据权利要求1所述的查找方法,其特征在于,所述基于所述待查找页面集中每个所述页面的所述焦点元素以及所述标记,查找焦点页面,具体包括:
当所述父页面不存在所述焦点元素,且仅有所述子页面存在所述焦点元素时,则将第一个查找到的具有所述焦点元素的子页面确定为所述焦点页面;
或,当所述父页面存在所述焦点元素,且各个所述子页面均不存在所述焦点元素时,则将所述父页面确定为所述焦点页面;
或,当所述父页面和所述子页面同时存在所述焦点元素时,则将所述父页面确定为所述焦点页面;
或,当所述父页面和所述子页面均不存在所述焦点元素,且仅有所述父页面存在所述按键响应事件时,则将所述父页面确定为所述焦点页面;
或,当所述父页面和所述子页面均不存在所述焦点元素,且仅有所述子页面存在所述按键响应事件时,则将第一个查找到的具有所述按键响应事件的子页面确定为所述焦点页面;
或,当所述父页面和所述子页面均不存在所述焦点元素,且所述父页面和所述子页面均存在所述按键响应事件时,则将所述父页面确定为焦点页面;
或,当所述父页面和所述子页面均不存在...

【专利技术属性】
技术研发人员:徐佳宏朱吕亮梁达源
申请(专利权)人:深圳市茁壮网络股份有限公司
类型:发明
国别省市:广东;44

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

1