CN106293352A - 页面构建方法、终端及服务器 - Google Patents
页面构建方法、终端及服务器 Download PDFInfo
- Publication number
- CN106293352A CN106293352A CN201510263991.7A CN201510263991A CN106293352A CN 106293352 A CN106293352 A CN 106293352A CN 201510263991 A CN201510263991 A CN 201510263991A CN 106293352 A CN106293352 A CN 106293352A
- Authority
- CN
- China
- Prior art keywords
- menu
- page
- tab
- subpage frame
- menu page
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Abstract
本发明提供一种页面构建方法、终端及服务器。一种页面构建方法包括从服务器获取网站的主页面数据;所述主页面数据包括用于定义所述主页面的页面结构的数据;按照所述主页面数据中定义的页面结构构建并呈现所述主页面;其中所述主页面数据中定义的页面结构具体为:在所述主页面中包括导航区域和子页面显示区域;所述导航区域用于显示至少一个包括可访问菜单项的导航页签;所述子页面显示区域用于显示关联于导航页签的子页面;所述子页面中进一步包括菜单页面显示区域和菜单页面控制区域;菜单页面显示区域用于显示所述菜单项对应的菜单页面;菜单页面控制区域用于显示与菜单页面显示区域内的菜单页面关联的菜单页签。本发明提高了用户的操作效率。
Description
技术领域
本发明实施例涉及信息技术,尤其涉及一种页面构建方法、终端及服务器。
背景技术
随着互联网技术的发展,人们使用手机、平板电脑、计算机等终端浏览网页的时间越来越多。
现有技术中,当用户在网页的当前页面内选择任一菜单项时,会另外打开一个新的页面用于呈现与用户所选择的菜单项相关联的信息,或者通过刷新当前页面以对用户所选择的菜单项相关联的信息进行呈现。
这样,用户需要查看不同菜单项对应的页面内容时,需要在不同的页面窗口之间进行切换,或者需要不断的刷新整个页面,使得用户操作割裂,操作效率低。
发明内容
本发明提供一种对页面进行页面构建的方法、终端及服务器,用以提高用户的操作效率。
第一方面,本发明提供一种页面构建方法,包括:
终端从服务器获取网站的主页面数据;所述主页面数据中包括用于定义所述主页面的页面结构的数据;
所述终端按照所述主页面数据中定义的页面结构构建并呈现所述主页面;其中,所述主页面数据中定义的页面结构具体为:在所述主页面中包括导航区域和子页面显示区域;所述导航区域用于显示至少一个包括可访问菜单项的导航页签;所述子页面显示区域用于显示关联于所述导航页签的子页面;所述子页面中进一步包括菜单页面显示区域和菜单页面控制区域;所述菜单页面显示区域用于显示所述菜单项对应的菜单页面;菜单页面控制区域用于显示与所述菜单页面显示区域内的菜单页面关联的菜单页签。
结合第一方面,在第一方面的第一种可能实现的方式中,所述方法还包括:
接收用户切换导航页签的指令;
基于接收到的指令,刷新所述子页面显示区域内显示的子页面。
结合第一方面的第一种可能实现的方式,在第一方面的第二种可能实现的方式中,当切换到的导航页签是首次被激活时,所述刷新所述子页面显示区域内显示的子页面具体包括:
在所述子页面显示区域内构建子页面,并将构建的子页面与切换到的导航页签关联;
将构建的子页面设置为前置,并将所述子页面显示区域内原来前置的子页面设置为隐藏。
结合第一方面的第一种或第二种可能实现的方式,在第一方面的第三种可能实现的方式中,当切换到的导航页签不是首次被激活时,所述刷新所述子页面显示区域内显示的子页面具体包括:
获取所述子页面显示区域内与所述切换到的导航页签所关联的子页面;
将与所述切换到的导航页签关联的子页面设置为前置,并将所述子页面显示区域中原来前置的子页面设置为隐藏。
结合第一方面的第一种至第三种任一种可能实现的方式,在第一方面的第四种可能实现的方式中,在刷新所述子页面显示区域内显示的子页面前,所述方法还包括:
确定所述切换到的导航页签是否有关联的子页面;
若所述切换到的导航页签有关联的子页面,则所述导航页签不是首次被激活;
若所述切换到的导航页签没有关联的子页面,则所述导航页签是首次被激活。
结合第一方面或第一方面的第一种至第四种任一种可能实现的方式,在第一方面的第五种可能实现的方式中,所述方法还包括:
接收用户在当前激活的导航页签内访问菜单项的指令;
在当前激活的导航页签所关联的子页面的菜单页面显示区域内呈现被访问的菜单项所对应的菜单页面。
结合第一方面的第五种可能实现的方式,在第一方面的第六种可能实现的方式中,当被访问的菜单项是首次被访问时,所述方法还包括:
在当前激活的导航页签所关联的子页面的菜单页面控制区域内生成菜单页签,并建立所述被访问的菜单项对应的菜单页面与生成的菜单页签的关联关系。
结合第一方面的第六种可能实现的方式,在第一方面的第七种可能实现的方式中,所述方法还包括:
在所述菜单页面控制区域内的菜单页面个数大于第一阈值时,将最早生成的菜单页签及所述最早生成的菜单页签关联的菜单页面清除。
结合第一方面的第六种或第七种可能实现的方式,在第一方面的第八种可能实现的方式中,所述在当前激活的导航页签所关联的子页面的菜单页面显示区域内呈现被访问的菜单项所对应的菜单页面具体包括:
获取所述被访问的菜单项对应的菜单页面;
将获取的菜单页面加载到文件对象模型DOM树,并放置在当前激活的导航页签所关联的子页面的菜单页面显示区域内;
将所述被访问的菜单项对应的菜单页面设置为前置,并将菜单页面显示区域内原来前置的菜单页面设置为隐藏。
结合第一方面的第八种可能实现的方式,在第一方面的第九种可能实现的方式中,所述方法还包括:
记录生成的所述菜单页签的生存周期,并遍历在当前激活的导航页签所关联的子页面的菜单页面控制区域内的其它菜单页签,将遍历到的菜单页签的生存周期的计数增加;
将计数增加后,生存周期大于第二阈值的菜单页签所对应的菜单页面从DOM树中移除。
结合第一方面的第五种至第九种任一种可能实现的方式,在第一方面的第十种可能实现的方式中,当被访问的菜单项不是首次被访问时,所述在当前激活的导航页签所关联的子页面的菜单页面显示区域内呈现被访问的菜单项所对应的菜单页面具体包括:
检查被访问的菜单项所对应的菜单页面是否在DOM树中;
当被访问的菜单项所对应的菜单页面不在所述DOM树中,则获取所述被访问的菜单项所对应的菜单页面,并将获取到的菜单页面重新加载到所述DOM树中,将加载后的菜单页面前置,以及将菜单页面显示区域内原来前置的菜单页面设置为隐藏;
当被访问的菜单项所对应的菜单页面在所述DOM树中,则直接将所述被访问的菜单项对应的菜单页面前置,并将菜单页面显示区域内原来前置的菜单页面设置为隐藏。
结合第一方面的第五种至第十种任一种可能实现的方式,在第一方面的第十一种可能实现的方式中,在接收到用户在当前激活的导航页签内访问菜单项的指令后,所述方法包括:
检查是否存在所述被访问菜单项所对应的菜单页面与菜单页签的关联关系;
若存在所述被访问菜单项所对应的菜单页面与菜单页签的关联关系,则所述被访问菜单项不是首次被访问;
若不存在所述被访问菜单项所对应的菜单页面与菜单页签的关联关系,则所述被访问菜单项是首次被访问。
第二方面,本发明提供一种页面构建的方法,所述方法包括:
服务器接收终端发送的用于获取网站的主页面数据的请求消息;
所述服务器向所述终端返回响应消息,所述响应消息包括所述网站的主页面数据;其中,所述主页面数据中包括用于定义所述主页面的页面结构的数据;所述主页面数据中定义的页面结构具体为:在所述主页面中包括导航区域和子页面显示区域;所述导航区域用于显示至少一个包括可访问菜单项的导航页签;所述子页面显示区域用于显示关联于所述导航页签的子页面;所述子页面中进一步包括菜单页面显示区域和菜单页面控制区域;所述菜单页面显示区域用于显示所述菜单项对应的菜单页面;菜单页面控制区域用于显示与所述菜单页面显示区域内的菜单页面关联的菜单页签。
第三方面,本发明提供一种终端,包括:
获取模块,用于从服务器获取网站的主页面数据;所述主页面数据中包括用于定义所述主页面的页面结构的数据;
处理模块,用于按照所述获取模块获取的所述主页面数据中定义的页面结构构建并呈现所述主页面;其中,所述主页面数据中定义的页面结构具体为:在所述主页面中包括导航区域和子页面显示区域;所述导航区域用于显示至少一个包括可访问菜单项的导航页签;所述子页面显示区域用于显示关联于所述导航页签的子页面;所述子页面中进一步包括菜单页面显示区域和菜单页面控制区域;所述菜单页面显示区域用于显示所述菜单项对应的菜单页面;菜单页面控制区域用于显示与所述菜单页面显示区域内的菜单页面关联的菜单页签。
结合第三方面,在第三方面的第一种可能实现的方式中,所述终端还包括:
第一接收模块,用于接收用户切换导航页签的指令;
所述处理模块,还用于基于所述第一接收模块接收到的切换导航页签的指令,刷新所述子页面显示区域内显示的子页面。
结合第三方面的第一种可能实现的方式,在第三方面的第二种可能实现的方式中,当切换到的导航页签是首次激活时,所述处理模块刷新所述子页面显示区域内显示的子页面,具体包括:
在所述子页面显示区域内构建子页面,并将构建的子页面与切换到的导航页签关联;
将构建的子页面设置为前置,并将所述子页面显示区域内原来前置的子页面设置为隐藏。
结合第三方面的第一种或第二种可能实现的方式,在第三方面的第三种可能实现的方式中,当切换到的导航页签不是首次激活时,所述处理模块刷新所述子页面显示区域内显示的子页面,具体包括:
获取所述子页面显示区域内与所述切换到的导航页签所关联的子页面;
将与所述切换到的导航页签关联的子页面设置为前置,并将所述子页面显示区域中原来前置的子页面设置为隐藏。
结合第三方面的第一种至第三种任一种可能实现的方式,在第三方面的第四种可能实现的方式中,所述处理模块还用于:
确定所述切换到的导航页签是否有关联的子页面;若所述切换到的导航页签有关联的子页面,则所述导航页签不是首次被激活;若所述切换到的导航页签没有关联的子页面,则所述导航页签是首次被激活。
结合第三方面或第三方面的第一种至第四种任一种可能实现的方式,在第三方面的第五种可能实现的方式中,所述终端还包括:
第二接收模块,用于接收用户在当前激活的导航页签内访问菜单项的指令;
所述处理模块,还用于根据所述第二接收模块接收到的访问菜单项的指令,在当前激活的导航页签所关联的子页面的菜单页面显示区域内呈现被访问的菜单项所对应的菜单页面。
结合第三方面的第五种可能实现的方式,在第三方面的第六种可能实现的方式中,当被访问的菜单项是首次被访问时,所述处理模块还用于:
在当前激活的导航页签所关联的子页面的菜单页面控制区域内生成菜单页签,并建立所述被访问的菜单项对应的菜单页面与生成的菜单页签的关联关系。
结合第三方面的第六种可能实现的方式,在第三方面的第七种可能实现的方式中,所述处理模块还用于:
在所述菜单页面控制区域内的菜单页面个数大于第一阈值时,将最早生成的菜单页签及所述最早生成的菜单页签关联的菜单页面清除。
结合第三方面的第六种或第七种可能实现的方式,在第三方面的第八种可能实现的方式中,当被访问的菜单项是首次被访问时,所述处理模块在当前激活的导航页签所关联的子页面的菜单页面显示区域内呈现被访问的菜单项所对应的菜单页面,具体包括:
获取所述被访问的菜单项对应的菜单页面;
将获取的菜单页面加载到文件对象模型DOM树,并放置在当前激活的导航页签所关联的子页面的菜单页面显示区域内;
将所述被访问的菜单项对应的菜单页面设置为前置,并将菜单页面显示区域内原来前置的菜单页面设置为隐藏。
结合第三方面的第八种可能实现的方式,在第三方面的第九种可能实现的方式中,所述处理模块还用于:
记录生成的所述菜单页签的生存周期,并遍历在当前激活的导航页签所关联的子页面的菜单页面控制区域内的其它菜单页签,将遍历到的菜单页签的生存周期的计数增加;将计数增加后,生存周期大于第二阈值的菜单页签所对应的菜单页面从DOM树中移除。
结合第三方面的第五种至第九种任一种可能实现的方式,在第三方面的第十种可能实现的方式中,当被访问的菜单项不是首次被访问时,所述处理模块在当前激活的导航页签所关联的子页面的菜单页面显示区域内呈现被访问的菜单项所对应的菜单页面,具体包括:
检查被访问的菜单项所对应的菜单页面是否在DOM树中;
当被访问的菜单项所对应的菜单页面不在所述DOM树中,则获取所述被访问的菜单项所对应的菜单页面,并将获取到的菜单页面重新加载到所述DOM树中,将加载后的菜单页面前置,以及将菜单页面显示区域内原来前置的菜单页面设置为隐藏;
当被访问的菜单项所对应的菜单页面在所述DOM树中,则直接将所述被访问的菜单项对应的菜单页面前置,并将菜单页面显示区域内原来前置的菜单页面设置为隐藏。
结合第三方面的第五种至第十种任一种可能实现的方式,在第三方面的第十一种可能实现的方式中,所述处理模块还用于:
检查是否存在所述被访问菜单项所对应的菜单页面与菜单页签的关联关系;若存在所述被访问菜单项所对应的菜单页面与菜单页签的关联关系,则所述被访问菜单项不是首次被访问;若不存在所述被访问菜单项所对应的菜单页面与菜单页签的关联关系,则所述被访问菜单项是首次被访问。
第四方面,本发明提供一种服务器,包括:
接收模块,用于接收终端发送的用于获取网站的主页面数据的请求消息;
发送模块,用于根据所述接收模块接收到的所述请求消息向所述终端返回响应消息,所述响应消息包括所述网站的主页面数据;其中,所述主页面数据中包括用于定义所述主页面的页面结构的数据;所述主页面数据中定义的页面结构具体为:在所述主页面中包括导航区域和子页面显示区域;所述导航区域用于显示至少一个包括可访问菜单项的导航页签;所述子页面显示区域用于显示关联于所述导航页签的子页面;所述子页面中进一步包括菜单页面显示区域和菜单页面控制区域;所述菜单页面显示区域用于显示所述菜单项对应的菜单页面;菜单页面控制区域用于显示与所述菜单页面显示区域内的菜单页面关联的菜单页签。
本发明提供一种页面构建方法、终端及服务器,通过按照所述主页面数据中定义的页面结构构建并呈现所述主页面;其中,所述主页面数据中定义的页面结构具体为:在所述主页面中包括导航区域和子页面显示区域;所述导航区域用于显示至少一个包括可访问菜单项的导航页签;所述子页面显示区域用于显示关联于所述导航页签的子页面;所述子页面中进一步包括菜单页面显示区域和菜单页面控制区域;所述菜单页面显示区域用于显示所述菜单项对应的菜单页面;菜单页面控制区域用于显示与所述菜单页面显示区域内的菜单页面关联的菜单页签;实现了页面嵌套子页面的多层次呈现方式,使得所有菜单项对应的子页面都能够显示在同一页面中,使得用户在不同菜单项对应的信息之间进行切换时,不需要在不同的页面窗口之间进行切换也不需要不断的刷新整个页面;因此解决了用户操作割裂的问题,提高了用户的操作效率。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的页面构建方法流程图;
图2为本发明实施例中定义的页面结构的示意图;
图3为本发明实施例提供的页面构建方法的流程图;
图4为本发明实施例提供的执行导航页签切换的流程图;
图5为本发明实施例在接收到切换导航页签的指令后的处理流程图;
图6为本发明实施例提供的菜单页面布局示意图;
图7为本发明实施例在接收到访问菜单项指令后的处理流程图;
图8为本发明实施例提供的访问菜单项的流程图;
图9为本发明实施例提供的终端的结构示意图;
图10为本发明实施例提供的服务器的结构示意图;
图11为本发明实施例提供的终端的硬件结构示意图;
图12为本发明实施例提供的服务器的硬件结构示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
图1为本发明实施例提供的页面构建方法流程图,如图1所示,本实施例的方法可以包括:
步骤101、终端从服务器获取网站的主页面数据;所述主页面数据中包括用于定义所述主页面的页面结构的数据。
其中,所述终端可以为手机、平板电脑、笔记本电脑、UMPC(Ultra-mobilePersonal Computer,超级移动个人计算机)、上网本、PDA(Personal DigitalAssistant,个人数字助理)等能够浏览网页的设备。
所述终端从服务器获取网站的主页面数据的方式可以包括:
所述终端向所述服务器发送用于获取网站的主页面数据的请求消息;
所述终端接收所述服务器返回的响应消息,所述响应消息包括所述网站的主页面数据。
步骤102、所述终端按照所述主页面数据中定义的页面结构构建并呈现所述主页面;其中,所述主页面数据中定义的页面结构具体为:在所述主页面中包括导航区域和子页面显示区域;所述导航区域用于显示至少一个包括可访问菜单项的导航页签;所述子页面显示区域用于显示关联于所述导航页签的子页面;所述子页面中进一步包括菜单页面显示区域和菜单页面控制区域;所述菜单页面显示区域用于显示所述菜单项对应的菜单页面;菜单页面控制区域用于显示与所述菜单页面显示区域内的菜单页面关联的菜单页签。
图2为本发明实施例中定义的页面结构的示意图,如图2所示,200为主页面,201为子页面显示区域,202为菜单页面显示区域,203为导航页签,204为菜单页签。该页面结构中具有两层页签,第一层页签为导航页签203,用于控制子页面显示区域201内的子页面,第二层页签为位于子页面内的菜单页签204,用于控制菜单页面显示区域202内的菜单页面。主页面、子页面以及菜单页面之间为逐级嵌套关系。
在具体实现时,可以通过层叠样式单(Cascading Style Sheet,简称CSS)使页面结构按照如上布局呈现。
在本发明实施例中导航页签还具有对菜单项进行归类聚合的作用,因此,每个导航页签都可包括一组菜单项。通过操作导航页签,比如,点击导航页签,可显示出该导航页签包括的菜单项。具体的,可在上述页面结构中布局一个用于显示菜单项的菜单行。可选的,为了扩大页面显示区域菜单页面,也可采用收缩式的浮动窗口来呈现菜单项。所述浮动窗口可浮于所述主页面之上。浮动窗口的收缩可通过与导航页签绑定的事件进行触发,比如,在导航页签上绑定鼠标悬浮事件,当鼠标悬浮在导航菜单上时,可弹出该浮动窗口,呈现被操作的导航页签包括的菜单项,当将鼠标移走,浮动窗口自动消失。
可选的,所述菜单项在显示的时候可以树形结构或扁平化的分组结构呈现。
本发明实施例中,通过主页面、子页面以及菜单页面之间的嵌套,使得所有菜单项对应的子页面都能够显示在同一页面中,使得用户在不同菜单项对应的信息之间进行切换时,不需要在不同的页面窗口之间进行切换也不需要不断的刷新整个页面;因此解决了用户操作割裂的问题。
需要说明的是,图2中导航区域位于页面的顶部、菜单页面控制区域位于页面的底部等等都仅为举例。任何满足步骤102中所述的页面结构,都属于本发明的保护范围。
在本发明的一个实施例中,步骤101中,终端可以通过与所述服务器进行交互,获得所述网页的主页面数据。具体如图3所示,图3为本发明实施例提供的页面构建方法的流程图。如图3所示,本实施例的方法可以包括:
步骤301、服务器接收终端发送用于获取网站的主页面数据的请求消息。
步骤302、服务器根据所述请求消息向所述终端返回响应消息;其中,所述响应消息包括所述网站的主页面数据;所述主页面数据中包括用于定义所述主页面的页面结构的数据。
需要说明的是,本实施例中所述主页面数据中定义的页面结构与步骤102中类似,在此不再赘述。
步骤303、所述终端按照所述主页面数据中定义的页面结构构建并呈现所述主页面。
本实施例中,服务器将主页面定义为嵌套式的页面结构提供给终端,使得终端能够根据服务器对所述主页面的页面结构的定义对所述主页面进行构建及呈现。
基于上述实施例定义的页面结构,用户可以对主页面中的内容进行操作,下面对操作过程进行详细描述。
具体如图4所示,图4为本发明实施例提供的执行导航页签切换的流程图。如图4所示,本实施例的方法可以包括:
步骤401、接收用户切换导航页签的指令。
每个导航页签可绑定一个或多个事件,比如,点击事件或划过事件。终端可检测事件的发生。假设切换导航页签的事件为点击事件,当终端检测到用户点击某个导航页签的事件时,该点击事件即为终端接收的切换到被点击导航页签的指令。
需要说明的是,当用户切换到第一导航页签时,则说明第一导航页签被激活,也即该第一导航页签为当前激活的导航页签;之后,当用户切换到第二导航页签时,则说明该第二导航页签被激活,此时该第二导航页签为当前激活的导航页签。
步骤402、基于接收到的指令,刷新所述子页面显示区域内显示的子页面。
终端接收到切换导航页签的指令后,获取切换后的导航页签所关联的子页面,在子页面显示区域内显示切换后的导航页签所关联的子页面。
其中,获取切换后的导航页签所关联的子页面的过程可包括以下两种情况:
情况一,切换到的导航页签是首次激活,获取过程具体包括:在所述子页面显示区域内构建子页面,并将构建的子页面与切换到的导航页签关联。
情况二,切换到的导航页签不是首次激活,获取过程具体包括:直接获取所述子页面显示区域内与所述切换到的导航页签所关联的子页面。
需要说明的是,当切换到的导航页签是首次激活时,说明之前并没有构建过所述切换到的导航页签所关联的子页面,需要先构建该导航页签所关联的子页面。当切换到的导航页签不是首次激活时,说明之前已构建过所述切换到的导航页签所关联的子页面,而不需要再次构建所述子页面。
下面对上述两种情况的具体实现进行详细说明,图5为本发明实施例在接收到切换导航页签的指令后的处理流程图,如图5所示,可以包括:
步骤501、判断切换到的导航页签是否首次被激活;若是,则执行步骤502;否则执行步骤503。
由于导航页签在首次被激活时,终端会创建与该导航页签关联的子页面,因此,终端可通过检查所述切换到的导航页签是否有关联的子页面来确定切换到的导航页签是否为首次激活。当所述切换到的导航页签有关联的子页面时,则确定所述导航页签不是首次激活;当所述切换到的导航页签没有关联的页面时,则确定所述导航页签是首次激活。
步骤502、在所述子页面显示区域内构建子页面,并将切换到的导航页签与构建的子页面关联;然后继续执行步骤504。
具体的,首次激活导航页签时,终端会构建出整个子页面的结构,将菜单页面的地址设置为该导航页签的首页地址,并构建导航页签与构建的子页面的关联关系。
步骤503、获取所述子页面显示区域内与所述切换到的导航页签所关联的子页面;然后继续执行504。
具体的,终端可通过查找预先构建的导航页签与子页面的关系获取到所述子页面显示区域内与所述切换到的导航页签所关联的子页面。
步骤504、将与所述切换到的导航页签关联的子页面设置为前置,并将所述子页面显示区域中原来前置的子页面设置为隐藏。
其中,本发明实施例中可以通过将原来前置的子页面置底的方式实现隐藏。具体的,可通过调整页面属性中的z-index值来置底页面。
基于图1所示实施例中的页面结构,用户可以对当前激活的导航页签中包括的可访问菜单项进行操作,具体如图7所示,图7为本发明实施例在接收到访问菜单项指令后的处理流程图。如图7所示,本实施例的方法可以包括:
步骤701、接收用户在当前激活的导航页签内访问菜单项的指令。
通过导航页签可将菜单项进行分类。比如,不同功能的菜单项位于不同导航页签中或者代表不同内容类型的菜单项位于不同导航页签中。每个导航页签中可包括一组菜单项。这些菜单项可以以扁平化的形式展现。关于菜单项的呈现可参考图2所示实施例中的说明,这里不再赘述。
用户可通过点击菜单项的方式来访问菜单项。
需要说明的是,关于当前激活的导航页签的具体说明与步骤401中类似,在此不再赘述。
步骤702、在当前激活的导航页签所关联的子页面的菜单页面显示区域内呈现被访问的菜单项所对应的菜单页面。
每个菜单项都具有菜单地址,终端在接收到访问菜单项的指令时,可以根据菜单地址获取该菜单项对应的菜单页面,将获取的菜单页面显示在当前激活的导航页签所关联的子页面的菜单页面显示区域内。
需要说明的是,每个菜单项所对应的菜单页面均归属于该菜单项所属的导航页签。因此,当打开菜单项对应的菜单页面时,该菜单页面被内聚到其归属的导航页签所关联的子页面中。
为了减少在不同菜单页面间进行切换的时延,本发明实施例中,可以在子页面的菜单页面显示区域内打开多个菜单页面,并为每个打开的菜单页面生一个菜单页签,由菜单页签来控制当前显示哪个菜单页面。这样,这些被打开的菜单页面间进行切换时就不用再重新加载。下面通过附图对本实施例进行更详细说明。
图8为本发明实施例提供的访问菜单项的流程图。如图8所示,可以包括:
步骤801、接收用户在当前激活的导航页签内访问菜单项的指令。
本步骤的具体实现可参考步骤701,这里不再赘述。
步骤802、判断被访问菜单项是否为首次被访问。
具体的,检查是否存在所述被访问菜单项所对应的菜单页面与菜单页签的关联关系;若存在所述被访问菜单项所对应的菜单页面与菜单页签的关联关系,则所述被访问菜单项不是首次被访问;若不存在所述被访问菜单项所对应的菜单页面与菜单页签的关联关系,则所述被访问菜单项是首次被访问。
若是,则执行步骤803;否则,执行步骤807。
步骤803、获取所述被访问的菜单项对应的菜单页面;将获取的菜单页面显示在当前激活的导航页签所关联的子页面的菜单页面显示区域内;然后继续执行步骤804-806。
具体的,终端可根据菜单项中的菜单地址获取菜单页面。其中,将获取的菜单页面显示在当前激活的导航页签所关联的子页面的菜单页面显示区域内具体包括:将获取的菜单页面加载到文件对象模型(DOM,Document ObjectModel)树,并放置在当前激活的导航页签所关联的子页面的菜单页面显示区域内;将所述被访问的菜单项对应的菜单页面设置为前置,并将菜单页面显示区域内原来前置的菜单页面设置为隐藏。
需要说明的是,当一菜单页面设置为前置时,菜单页面显示区域中呈现该菜单页面;当一菜单页面被设置为隐藏时,菜单页面显示区域中不再呈现该菜单页面。
步骤804、在当前激活的导航页签所关联的子页面的菜单页面控制区域内生成菜单页签,并建立所述被访问的菜单项对应的菜单页面与生成的菜单页签的关联关系。
步骤805、记录生成的所述菜单页签的生存周期,并遍历在当前激活的导航页签所关联的子页面的菜单页面控制区域内的其它菜单页签,将遍历到的菜单页签的生存周期的计数增加。
具体的,生存周期可记录在菜单页签与菜单页面的关联关系中。例如,该关联关系可以是如下形式:{tab:{div:obj;ttl:1}}。其中,tab用于表示页签(如,菜单页签),div用于表示页面(如,菜单页面),ttl用于表示生存周期。需要说明的是,这里所说的菜单页签的生存周期也可以认为是菜单页面的生存周期,两者是一致的。
步骤806、将计数增加后,生存周期大于第二阈值的菜单页签所对应的菜单页面从DOM树中移除。
其中,所述第二阈值是用于控制DOM树中菜单页面的个数的值。由于菜单页签与菜单页面是关联的,而菜单页面被加载到DOM树中,因此通过为菜单页签赋予生存周期,可以控制DOM树中菜单页签的个数。通过将计数增加后,生存周期大于第二阈值的菜单页签所对应的菜单页面从DOM树中移除,能够有效控制DOM树的规模,防止出现DOM树过大而影响菜单页面切换速度的问题。
步骤807、检查被访问的菜单项对应的菜单页面是否在DOM树中;若是,则执行步骤808;否则,执行步骤809。
需要说明的是,由于本实施例中存在将生存周期大于第二阈值的菜单页签所对应的菜单页面从DOM树中移除的情况,因此会出现当前激活的导航页签关联的子页面的菜单页面控制区域内某一菜单页签存在,而该菜单页签对应的菜单页面在DOM树中不存在的情况。因此当确定被访问菜单项不是首次被访问时,还需要进一步检查被访问的菜单项对应的菜单页面是否在DOM树中。
步骤808、直接将所述被访问的菜单项对应的菜单页面前置,并将菜单页面显示区域内原来前置的菜单页面设置为隐藏。
具体的,不同的菜单页面的布局如图6所示,图6为本发明实施例提供的菜单页面布局示意图。
如图6所示,不同的菜单页面排列在z轴方向上。因此,当某个菜单页面的z轴的值最小时,相当于该菜单页面被设置为前置。
需要说明的是,当某个菜单页面被设置为前置时,则该菜单页面为当前激活的菜单页面,该菜单页面关联的菜单页签为当前激活的菜单页签。
步骤809、获取所述被访问的菜单项所对应的菜单页面,并将获取到的菜单页面重新加载到所述DOM树中,将加载后的菜单页面前置,以及将菜单页面显示区域内原来前置的菜单页面设置为隐藏。
需要说明的是,上述实施例中对DOM的清理是可选的,在步骤805之后也可以直接执行步骤808。
在另一实施例中,为了控制菜单页面对终端资源的占用,终端可以对打开的菜单页面的个数进行限制。具体的,在当前激活的导航页签所关联的子页面的菜单页面控制区域内的菜单页面个数大于第一阈值时,将最早生成的菜单页签及所述最早生成的菜单页签关联的菜单页面清除。
其中,所述第一阈值是用于控制用户同时打开的菜单页面的数目的值。通过当菜单页面控制区域内的菜单页面个数大于第一阈值时,最早生成的菜单页签及所述最早生成的菜单页签关联的菜单页面被清除,通过执行上述处理可以限制用户同时打开的菜单页面的数目,从而避免由浏览器加载的菜单页面较多而导致浏览器响应速度变慢的问题。
需要说明的是,在第一阈值和第二阈值都采用的情况下,所述第一阈值的大小应大于步骤806中所述第二阈值的大小。通过第一阈值和第二阈值的设定,可以对终端实现分层次的负载控制。首先,控制DOM树中加载的菜单页面的数目;其次,在确保DOM树中加载的菜单页面的数目应小于第二阈值时,可以进一步限制菜单页面控制区域内的菜单页面的数目。
上述实施例中,通过将菜单项对应的菜单页面呈现在该菜单页面归属的导航页签所关联的子页面中,使得菜单页面间的切换可在子页面内完成。而且各导航页签间的切换不影响各自子页面中的内容,因此,在切换过程中,已打开的菜单页面不会被刷新,可以快速切换回已经打开的菜单页面,提供的访问效率,弥补了用户操作割裂的问题。
可选的,本实施例还可以包括:检查用户是否悬停在当前激活的导航页签所关联的子页面的菜单页面控制区域内的未激活菜单页签上;若是,则将用户所悬停的未激活菜单页签关联的菜单页面作为预览信息显示在预览窗口。
其中,所述预览窗口浮于所述页面之上。
进一步可选的,当检测到鼠标停留在所述未激活菜单页签上时,可以确定用户悬停在所述未激活菜单页签上。
可选的,可以获取鼠标的当前位置,并根据鼠标当前位置确定预览窗口的位置。
可选的,可以将所述未激活菜单页签关联的菜单页面缩小至预设大小后(例如,60mm*30mm)显示在预览窗口。
可选的,可以通过动画效果来呈现所述预览窗口。
可选的,所述检查用户悬停在所述未激活菜单页签上之后,还可以包括:检查用户不再悬停在所述未激活菜单页签上,并取消对所述预览信息的显示。
可选的,可以通过关闭预览窗口的方式取消对所述预览信息的显示;或者,也可以通过将预览窗口的长或者宽设置为0的方式取消对预览信息的显示。
需要说明的是,通过将所述未激活菜单页签所关联的菜单页面一预览信息的方式进行显示;进一步解决了用户操作割裂的问题。
需要说明的是,图1、图3、图4、图7所示方法实施例可以结合,从而获得具有更多功能的方案。
图9为本发明实施例提供的终端的结构示意图,如图9所示,本实施例的终端可以包括:获取模块901和处理模块902。其中,获取模块901,用于从服务器获取网站的主页面数据;所述主页面数据中包括用于定义所述主页面的页面结构的数据;处理模块902,用于按照获取模块901获取的所述主页面数据中定义的页面结构构建并呈现所述主页面;其中,所述主页面数据中定义的页面结构具体为:在所述主页面中包括导航区域和子页面显示区域;所述导航区域用于显示至少一个包括可访问菜单项的导航页签;所述子页面显示区域用于显示关联于所述导航页签的子页面;所述子页面中进一步包括菜单页面显示区域和菜单页面控制区域;所述菜单页面显示区域用于显示所述菜单项对应的菜单页面;菜单页面控制区域用于显示与所述菜单页面显示区域内的菜单页面关联的菜单页签。
其中,本实施例中定义的页面结构如图2所示,此处不再赘述。
可选的,本实施例的终端还可以处理用户输入的切换导航页签的指令。
具体的,本实施例的终端还可以包括:第一接收模块903,用于接收用户切换导航页签的指令;处理模块902,还用于基于第一接收模块903接收到的切换导航页签的指令,刷新所述子页面显示区域内显示的子页面。
其中,处理模块902基于第一接收模块903收到的切换导航页签的指令,刷新所述子页面显示区域内显示的子页面,具体包括:
获取切换后的导航页签所关联的子页面,在子页面显示区域内显示切换后的导航页签所关联的子页面。
处理模块902获取切换后的导航页签所关联的子页面的过程包括以下两种情况:
情况一、切换的导航页签是首次激活,处理模块902获取切换后的导航页签所关联的子页面具体包括:在所述子页面显示区域内构建子页面,并将构建的子页面与切换到的导航页签关联。
情况二、切换到的导航页签不是首次激活,处理模块902获取切换后的导航页签所关联的子页面具体包括:直接获取所述子页面显示区域内与所述切换到的导航页签所关联的子页面。
处理模块902在子页面显示区域内显示切换后的导航页签所关联的子页面,具体包括:
将与所述切换到的导航页签关联的子页面设置为前置,并将所述子页面显示区域中原来前置的子页面设置为隐藏。
处理模块902确定导航页签是否是首次激活的具体过程包括:确定所述切换到的导航页签是否有关联的子页面;若所述切换到的导航页签有关联的子页面,则所述导航页签不是首次被激活;若所述切换到的导航页签没有关联的子页面,则所述导航页签是首次被激活。
需要说明的是,处理模块902上述各功能的具体实现方式可参考图4以及图5所示的方法实施例部分,这里不再赘述。
可选的,本实施例的终端还可以处理用户输入的访问菜单项的指令。
具体的,本实施例的终端还可以包括:第二接收模块904,用于接收用户在当前激活的导航页签内访问菜单项的指令;处理模块902,还用于根据第二接收模块904接收到的访问菜单项的指令,在当前激活的导航页签所关联的子页面的菜单页面显示区域内呈现被访问的菜单项所对应的菜单页面。
其中,处理模块902根据第二接收模块904接收到的访问菜单项的指令,在当前激活的导航页签所关联的子页面的菜单页面显示区域内呈现被访问的菜单项所对应的菜单页面的具体方式,与步骤702中类似,此处不再赘述。
由于当被访问的菜单项是首次被访问时,终端内并不存在所述被访问的菜单项对应的菜单页面与生成的菜单页签的关联关系;因此当被访问的菜单项是首次被访问时,处理模块902还用于:
在当前激活的导航页签所关联的子页面的菜单页面控制区域内生成菜单页签,并建立所述被访问的菜单项对应的菜单页面与生成的菜单页签的关联关系。
可选的,本实施例的终端还可以对打开的菜单页面的个数进行限制;具体的,处理模块902,还用于在所述菜单页面控制区域内的菜单页面个数大于第一阈值时,将最早生成的菜单页签及所述最早生成的菜单页签关联的菜单页面清除。
其中,关于第一阈值的说明可参考步骤809中的说明,此处不再赘述。
当被访问的菜单项是首次被访问或不是首次被访问时,处理模块902在当前激活的导航页签所关联的子页面的菜单页面显示区域内呈现被访问的菜单项所对应的菜单页面的具体操作并不相同。
具体的,当被访问的菜单项是首次被访问时,处理模块902在当前激活的导航页签所关联的子页面的菜单页面显示区域内呈现被访问的菜单项所对应的菜单页面,具体包括:
获取所述被访问的菜单项对应的菜单页面;
将获取的菜单页面加载到文件对象模型DOM树,并放置在当前激活的导航页签所关联的子页面的菜单页面显示区域内;
将所述被访问的菜单项对应的菜单页面设置为前置,并将菜单页面显示区域内原来前置的菜单页面设置为隐藏。
具体的,当被访问的菜单项不是首次被访问时,处理模块902在当前激活的导航页签所关联的子页面的菜单页面显示区域内呈现被访问的菜单项所对应的菜单页面,具体包括:
检查被访问的菜单项所对应的菜单页面是否在DOM树中;
当被访问的菜单项所对应的菜单页面不在所述DOM树中,则获取所述被访问的菜单项所对应的菜单页面,并将获取到的菜单页面重新加载到所述DOM树中,将加载后的菜单页面前置,以及将菜单页面显示区域内原来前置的菜单页面设置为隐藏;
当被访问的菜单项所对应的菜单页面在所述DOM树中,则直接将所述被访问的菜单项对应的菜单页面前置,并将菜单页面显示区域内原来前置的菜单页面设置为隐藏。
可选的,由于被访问的菜单项是首次被访问或不是首次被访问时,处理模块902在当前激活的导航页签所关联的子页面的菜单页面显示区域内呈现被访问的菜单项所对应的菜单页面的具体操作并不相同;因此,处理模块902还需要确定所述被访问的菜单项是否是首次被访问。
具体的,处理模块902,还用于检查是否存在所述被访问菜单项所对应的菜单页面与菜单页签的关联关系;若存在所述被访问菜单项所对应的菜单页面与菜单页签的关联关系,则所述被访问菜单项不是首次被访问;若不存在所述被访问菜单项所对应的菜单页面与菜单页签的关联关系,则所述被访问菜单项是首次被访问。
可选的,处理模块902还可以控制DOM树中菜单页签的个数的值;具体的,处理模块902,还用于记录生成的所述菜单页签的生存周期,并遍历在当前激活的导航页签所关联的子页面的菜单页面控制区域内的其它菜单页签,将遍历到的菜单页签的生存周期的计数增加;将计数增加后,生存周期大于第二阈值的菜单页签所对应的菜单页面从DOM树中移除。
其中,关于第二阈值的说明可参考步骤806中的说明,此处不再赘述。
本实施例的终端,可以用于执行图1、图4~图8所示方法实施例的技术方案,其实现原理和技术效果类似,此处不再赘述。
图10为本发明实施例提供的服务器的结构示意图,如图10所示,本实施例的服务器可以包括:接收模块1001和发送模块1002。其中,接收模块1001,用于接收终端发送的用于获取网站的主页面数据的请求消息;发送模块1002,用于根据接收模块1001接收到的所述请求消息向所述终端返回响应消息,所述响应消息包括所述网站的主页面数据;其中,所述主页面数据中包括用于定义所述主页面的页面结构的数据;所述主页面数据中定义的页面结构具体为:在所述主页面中包括导航区域和子页面显示区域;所述导航区域用于显示至少一个包括可访问菜单项的导航页签;所述子页面显示区域用于显示关联于所述导航页签的子页面;所述子页面中进一步包括菜单页面显示区域和菜单页面控制区域;所述菜单页面显示区域用于显示所述菜单项对应的菜单页面;菜单页面控制区域用于显示与所述菜单页面显示区域内的菜单页面关联的菜单页签。
本实施例的终端,可以用于执行图3所示方法实施例服务器侧的技术方案,其实现原理和技术效果类似,此处不再赘述。
图11为本发明实施例提供的终端的硬件结构示意图,如图11所示,本实施例的终端可以包括:通信接口1101、I/O接口1102、处理器1103、存储器1104以及总线1105。通信接口1101,I/O接口1102、处理器1103和存储器1104通过总线1105相互连接。
其中,通信接口1101用来实现终端与网络中的其它设备的交互。本发明实施例中,终端可以通过通信接口1101与服务器交互,获取主页面数据。具体的,终端可以通过通信接口1101向服务器发送用于获取网站的主页面数据的请求消息,并通过通信接口1101接收所述服务器返回的包括主页面数据的响应消息。
I/O接口1102用于实现终端与用户的交互。本发明实施例中,终端可以通过I/O接口1102接收用于的操作指令,例如,切换导航页签的指令,访问菜单项的指令等。
存储器1104可以是硬盘等存储介质。存储器1104可以存储操作系统和其他应用程序的指令以及应用数据。本发明实施例中存储器1104可存储实现浏览器的程序指令以及终端从服务器获取的主页面数据。
处理器1103可以是通用处理器,包括中央处理器(Central ProcessingUnit,简称CPU)、网络处理器(Network Processor,简称NP)等;还可以是数字信号处理器(DSP)、专用集成电路(ASIC)、现场可编程门阵列(FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
总线1105可包括一通路,在各个部件(例如处理器1103、存储器1104、通信接口1101和I/O接口1102)之间传送信息。
本发明实施例中,处理器1103用于运行存储器1104中的浏览器,用于实现以下功能:按照主页面数据中定义的页面结构构建并呈现所述主页面;其中,所述主页面数据中定义的页面结构具体为:在所述主页面中包括导航区域和子页面显示区域;所述导航区域用于显示至少一个包括可访问菜单项的导航页签;所述子页面显示区域用于显示关联于所述导航页签的子页面;所述子页面中进一步包括菜单页面显示区域和菜单页面控制区域;所述菜单页面显示区域用于显示所述菜单项对应的菜单页面;菜单页面控制区域用于显示与所述菜单页面显示区域内的菜单页面关联的菜单页签。
其中,处理器1103构建所述主页面的过程可参考图1以及图2所示方法实施例部分,此处不再赘述。
可选的,本实施例的终端还可以处理用户输入的切换导航页签的指令,并根据指令进行相应的处理。
具体的,处理器1103,还用于基于I/O接口1102接收到的切换导航页签的指令,刷新所述子页面显示区域内显示的子页面。
其中,处理器1103刷新所述子页面显示区域内显示的子页面的过程可参考图4以及图5所示方法实施例部分,此处不再赘述。
可选的,本实施例的终端还可以处理用户输入的访问菜单项的指令。
具体的,处理器1103,还用于根据I/O接口1102接收到的访问菜单项的指令,在当前激活的导航页签所关联的子页面的菜单页面显示区域内呈现被访问的菜单项所对应的菜单页面。
其中,处理器1103呈现被访问的菜单项所对应的菜单页面的过程可参考图6,图7以及图8所示方法实施例部分,此处不再赘述。
可选的,处理器1103还可以对用户同时打开的菜单页面的数目进行限制;具体的,处理器1103,还用于在所述菜单页面控制区域内的菜单页面个数大于第一阈值时,将最早生成的菜单页签及所述最早生成的菜单页签关联的菜单页面清除。
图12为本发明实施例提供的服务器的硬件结构示意图,如图12所示,本实施例的服务器可以包括:通信接口1201、处理器1202、存储器1203以及总线1204。通信接口1201,处理器1202和存储器1203通过总线1204相互连接。
其中,通信接口1201用来实现服务器与网络中的其他设备的交互。本发明实施例中,服务器可以通过通信接口1201与终端交互,向终端发送主页面数据。具体的,服务器可以通过通信接口1201接收终端发送的用于获取网站的主页面数据的请求消息,并通过通信接口1201向终端返回响应消息,所述响应消息包括所述网站的主页面数据。
存储器1203可以是硬盘等存储介质。存储器1203可以存储操作系统和其他应用程序的指令以及应用数据。本发明实施例中存储器1203可存储实现服务器的程序指令以及网站的主页面数据。
处理器1202可以是通用处理器,包括CPU、NP等;还可以是DSP、ASIC、FPGA或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
总线1204可包括一通路,在各个部件(例如处理器1202、存储器1203和通信接口1201)之间传递信息。
本发明实施例中,处理器1202用于运行存储器1203中的指令,用于实现以下功能:用于根据通信接口1201接收终端发送的用于获取网站的主页面数据的请求消息,生成响应消息,所述响应消息包括所述网站的主页面数据;其中,所述主页面数据中包括用于定义所述主页面的页面结构的数据;所述主页面数据中定义的页面结构具体为:在所述主页面中包括导航区域和子页面显示区域;所述导航区域用于显示至少一个包括可访问菜单项的导航页签;所述子页面显示区域用于显示关联于所述导航页签的子页面;所述子页面中进一步包括菜单页面显示区域和菜单页面控制区域;所述菜单页面显示区域用于显示所述菜单项对应的菜单页面;菜单页面控制区域用于显示与所述菜单页面显示区域内的菜单页面关联的菜单页签。
本领域普通技术人员可以理解:实现上述各方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成。前述的程序可以存储于一计算机可读取存储介质中。该程序在执行时,执行包括上述各方法实施例的步骤;而前述的存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。
Claims (26)
1.一种页面构建方法,其特征在于,所述方法包括:
终端从服务器获取网站的主页面数据;所述主页面数据中包括用于定义所述主页面的页面结构的数据;
所述终端按照所述主页面数据中定义的页面结构构建并呈现所述主页面;其中,所述主页面数据中定义的页面结构具体为:在所述主页面中包括导航区域和子页面显示区域;所述导航区域用于显示至少一个包括可访问菜单项的导航页签;所述子页面显示区域用于显示关联于所述导航页签的子页面;所述子页面中进一步包括菜单页面显示区域和菜单页面控制区域;所述菜单页面显示区域用于显示所述菜单项对应的菜单页面;菜单页面控制区域用于显示与所述菜单页面显示区域内的菜单页面关联的菜单页签。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
接收用户切换导航页签的指令;
基于接收到的指令,刷新所述子页面显示区域内显示的子页面。
3.根据权利要求2所述的方法,其特征在于,当切换到的导航页签是首次被激活时,所述刷新所述子页面显示区域内显示的子页面具体包括:
在所述子页面显示区域内构建子页面,并将构建的子页面与切换到的导航页签关联;
将构建的子页面设置为前置,并将所述子页面显示区域内原来前置的子页面设置为隐藏。
4.根据权利要求2或3所述的方法,其特征在于,当切换到的导航页签不是首次被激活时,所述刷新所述子页面显示区域内显示的子页面具体包括:
获取所述子页面显示区域内与所述切换到的导航页签所关联的子页面;
将与所述切换到的导航页签关联的子页面设置为前置,并将所述子页面显示区域中原来前置的子页面设置为隐藏。
5.根据权利要求2-4任一项所述的方法,其特征在于,在刷新所述子页面显示区域内显示的子页面前,所述方法还包括:
确定所述切换到的导航页签是否有关联的子页面;
若所述切换到的导航页签有关联的子页面,则所述导航页签不是首次被激活;
若所述切换到的导航页签没有关联的子页面,则所述导航页签是首次被激活。
6.根据权利要求1-5任一项所述的方法,其特征在于,所述方法还包括:
接收用户在当前激活的导航页签内访问菜单项的指令;
在当前激活的导航页签所关联的子页面的菜单页面显示区域内呈现被访问的菜单项所对应的菜单页面。
7.根据权利要求6所述的方法,其特征在于,当被访问的菜单项是首次被访问时,所述方法还包括:
在当前激活的导航页签所关联的子页面的菜单页面控制区域内生成菜单页签,并建立所述被访问的菜单项对应的菜单页面与生成的菜单页签的关联关系。
8.根据权利要求7所述的方法,其特征在于,所述方法还包括:
在所述菜单页面控制区域内的菜单页面个数大于第一阈值时,将最早生成的菜单页签及所述最早生成的菜单页签关联的菜单页面清除。
9.根据权利要求7或8所述的方法,其特征在于,当被访问的菜单项是首次被访问时,所述在当前激活的导航页签所关联的子页面的菜单页面显示区域内呈现被访问的菜单项所对应的菜单页面具体包括:
获取所述被访问的菜单项对应的菜单页面;
将获取的菜单页面加载到文件对象模型DOM树,并放置在当前激活的导航页签所关联的子页面的菜单页面显示区域内;
将所述被访问的菜单项对应的菜单页面设置为前置,并将菜单页面显示区域内原来前置的菜单页面设置为隐藏。
10.根据权利要求9所述的方法,其特征在于,所述方法还包括:
记录生成的所述菜单页签的生存周期,并遍历在当前激活的导航页签所关联的子页面的菜单页面控制区域内的其它菜单页签,将遍历到的菜单页签的生存周期的计数增加;
将计数增加后,生存周期大于第二阈值的菜单页签所对应的菜单页面从DOM树中移除。
11.根据权利要求6-10任一项所述的方法,其特征在于,当被访问的菜单项不是首次被访问时,所述在当前激活的导航页签所关联的子页面的菜单页面显示区域内呈现被访问的菜单项所对应的菜单页面具体包括:
检查被访问的菜单项所对应的菜单页面是否在DOM树中;
当被访问的菜单项所对应的菜单页面不在所述DOM树中,则获取所述被访问的菜单项所对应的菜单页面,并将获取到的菜单页面重新加载到所述DOM树中,将加载后的菜单页面前置,以及将菜单页面显示区域内原来前置的菜单页面设置为隐藏;
当被访问的菜单项所对应的菜单页面在所述DOM树中,则直接将所述被访问的菜单项对应的菜单页面前置,并将菜单页面显示区域内原来前置的菜单页面设置为隐藏。
12.根据权利要求6-11任一项所述的方法,其特征在于,在接收到用户在当前激活的导航页签内访问菜单项的指令后,所述方法包括:
检查是否存在所述被访问菜单项所对应的菜单页面与菜单页签的关联关系;
若存在所述被访问菜单项所对应的菜单页面与菜单页签的关联关系,则所述被访问菜单项不是首次被访问;
若不存在所述被访问菜单项所对应的菜单页面与菜单页签的关联关系,则所述被访问菜单项是首次被访问。
13.一种页面构建方法,其特征在于,所述方法包括:
服务器接收终端发送的用于获取网站的主页面数据的请求消息;
所述服务器向所述终端返回响应消息,所述响应消息包括所述网站的主页面数据;其中,所述主页面数据中包括用于定义所述主页面的页面结构的数据;所述主页面数据中定义的页面结构具体为:在所述主页面中包括导航区域和子页面显示区域;所述导航区域用于显示至少一个包括可访问菜单项的导航页签;所述子页面显示区域用于显示关联于所述导航页签的子页面;所述子页面中进一步包括菜单页面显示区域和菜单页面控制区域;所述菜单页面显示区域用于显示所述菜单项对应的菜单页面;菜单页面控制区域用于显示与所述菜单页面显示区域内的菜单页面关联的菜单页签。
14.一种终端,其特征在于,包括:
获取模块,用于从服务器获取网站的主页面数据;所述主页面数据中包括用于定义所述主页面的页面结构的数据;
处理模块,用于按照所述获取模块获取的所述主页面数据中定义的页面结构构建并呈现所述主页面;其中,所述主页面数据中定义的页面结构具体为:在所述主页面中包括导航区域和子页面显示区域;所述导航区域用于显示至少一个包括可访问菜单项的导航页签;所述子页面显示区域用于显示关联于所述导航页签的子页面;所述子页面中进一步包括菜单页面显示区域和菜单页面控制区域;所述菜单页面显示区域用于显示所述菜单项对应的菜单页面;菜单页面控制区域用于显示与所述菜单页面显示区域内的菜单页面关联的菜单页签。
15.根据权利要求14所述的终端,其特征在于,所述终端还包括:
第一接收模块,用于接收用户切换导航页签的指令;
所述处理模块,还用于基于所述第一接收模块接收到的切换导航页签的指令,刷新所述子页面显示区域内显示的子页面。
16.根据权利要求15所述的终端,其特征在于,当切换到的导航页签是首次激活时,所述处理模块刷新所述子页面显示区域内显示的子页面具体包括:
在所述子页面显示区域内构建子页面,并将构建的子页面与切换到的导航页签关联;
将构建的子页面设置为前置,并将所述子页面显示区域内原来前置的子页面设置为隐藏。
17.根据权利要求15或16所述的终端,其特征在于,当切换到的导航页签不是首次激活时,所述处理模块刷新所述子页面显示区域内显示的子页面具体包括:
获取所述子页面显示区域内与所述切换到的导航页签所关联的子页面;
将与所述切换到的导航页签关联的子页面设置为前置,并将所述子页面显示区域中原来前置的子页面设置为隐藏。
18.根据权利要求15-17任一项所述的终端,其特征在于,所述处理模块还用于:
确定所述切换到的导航页签是否有关联的子页面;若所述切换到的导航页签有关联的子页面,则所述导航页签不是首次被激活;若所述切换到的导航页签没有关联的子页面,则所述导航页签是首次被激活。
19.根据权利要求14-18任一项所述的终端,其特征在于,所述终端还包括:
第二接收模块,用于接收用户在当前激活的导航页签内访问菜单项的指令;
所述处理模块,还用于根据所述第二接收模块接收到的访问菜单项的指令,在当前激活的导航页签所关联的子页面的菜单页面显示区域内呈现被访问的菜单项所对应的菜单页面。
20.根据权利要求19所述的终端,其特征在于,当被访问的菜单项是首次被访问时,所述处理模块还用于:
在当前激活的导航页签所关联的子页面的菜单页面控制区域内生成菜单页签,并建立所述被访问的菜单项对应的菜单页面与生成的菜单页签的关联关系。
21.根据权利要求20所述的终端,其特征在于,所述处理模块还用于:
在所述菜单页面控制区域内的菜单页面个数大于第一阈值时,将最早生成的菜单页签及所述最早生成的菜单页签关联的菜单页面清除。
22.根据权利要求20或21所述的终端,其特征在于,当被访问的菜单项是首次被访问时,所述处理模块在当前激活的导航页签所关联的子页面的菜单页面显示区域内呈现被访问的菜单项所对应的菜单页面,具体包括:
获取所述被访问的菜单项对应的菜单页面;
将获取的菜单页面加载到文件对象模型DOM树,并放置在当前激活的导航页签所关联的子页面的菜单页面显示区域内;
将所述被访问的菜单项对应的菜单页面设置为前置,并将菜单页面显示区域内原来前置的菜单页面设置为隐藏。
23.根据权利要求22所述的终端,其特征在于,所述处理模块还用于:
记录生成的所述菜单页签的生存周期,并遍历在当前激活的导航页签所关联的子页面的菜单页面控制区域内的其它菜单页签,将遍历到的菜单页签的生存周期的计数增加;将计数增加后,生存周期大于第二阈值的菜单页签所对应的菜单页面从DOM树中移除。
24.根据权利要求19-23任一项所述的终端,其特征在于,当被访问的菜单项不是首次被访问时,所述处理模块在当前激活的导航页签所关联的子页面的菜单页面显示区域内呈现被访问的菜单项所对应的菜单页面,具体包括:
检查被访问的菜单项所对应的菜单页面是否在DOM树中;
当被访问的菜单项所对应的菜单页面不在所述DOM树中,则获取所述被访问的菜单项所对应的菜单页面,并将获取到的菜单页面重新加载到所述DOM树中,将加载后的菜单页面前置,以及将菜单页面显示区域内原来前置的菜单页面设置为隐藏;
当被访问的菜单项所对应的菜单页面在所述DOM树中,则直接将所述被访问的菜单项对应的菜单页面前置,并将菜单页面显示区域内原来前置的菜单页面设置为隐藏。
25.根据权利要求19-24任一项所述的终端,其特征在于,所述处理模块还用于:
检查是否存在所述被访问菜单项所对应的菜单页面与菜单页签的关联关系;若存在所述被访问菜单项所对应的菜单页面与菜单页签的关联关系,则所述被访问菜单项不是首次被访问;若不存在所述被访问菜单项所对应的菜单页面与菜单页签的关联关系,则所述被访问菜单项是首次被访问。
26.一种服务器,其特征在于,包括:
接收模块,用于接收终端发送的用于获取网站的主页面数据的请求消息;
发送模块,用于根据所述接收模块接收到的所述请求消息向所述终端返回响应消息,所述响应消息包括所述网站的主页面数据;其中,所述主页面数据中包括用于定义所述主页面的页面结构的数据;所述主页面数据中定义的页面结构具体为:在所述主页面中包括导航区域和子页面显示区域;所述导航区域用于显示至少一个包括可访问菜单项的导航页签;所述子页面显示区域用于显示关联于所述导航页签的子页面;所述子页面中进一步包括菜单页面显示区域和菜单页面控制区域;所述菜单页面显示区域用于显示所述菜单项对应的菜单页面;菜单页面控制区域用于显示与所述菜单页面显示区域内的菜单页面关联的菜单页签。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510263991.7A CN106293352B (zh) | 2015-05-21 | 2015-05-21 | 页面构建方法、终端及服务器 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510263991.7A CN106293352B (zh) | 2015-05-21 | 2015-05-21 | 页面构建方法、终端及服务器 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106293352A true CN106293352A (zh) | 2017-01-04 |
CN106293352B CN106293352B (zh) | 2020-03-06 |
Family
ID=57634071
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510263991.7A Active CN106293352B (zh) | 2015-05-21 | 2015-05-21 | 页面构建方法、终端及服务器 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106293352B (zh) |
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107480218A (zh) * | 2017-07-31 | 2017-12-15 | 阿里巴巴集团控股有限公司 | 网页显示方法及装置、电子设备、存储介质 |
CN108399222A (zh) * | 2018-02-11 | 2018-08-14 | 北京奇艺世纪科技有限公司 | 一种页面刷新方法及装置 |
CN108958876A (zh) * | 2018-07-23 | 2018-12-07 | 郑州云海信息技术有限公司 | 浏览器页面的显示方法和装置 |
CN109240568A (zh) * | 2018-08-21 | 2019-01-18 | 杭州迪普科技股份有限公司 | 一种菜单页面的显示方法、装置及存储介质 |
CN110069188A (zh) * | 2019-03-08 | 2019-07-30 | 维沃移动通信有限公司 | 标识显示方法及终端设备 |
CN111813410A (zh) * | 2020-07-08 | 2020-10-23 | 北京亚鸿世纪科技发展有限公司 | 浏览器数据可视化开发用于多页面联合展示的方法和装置 |
CN112068837A (zh) * | 2020-09-10 | 2020-12-11 | 浪潮软件科技有限公司 | 一种终端页面调转及数据保持的方法 |
CN112241498A (zh) * | 2019-07-18 | 2021-01-19 | 腾讯科技(深圳)有限公司 | 页面内容显示方法、装置、可读存储介质和计算机设备 |
CN112558945A (zh) * | 2020-11-25 | 2021-03-26 | 紫光云技术有限公司 | 一种新型模块化页面设计方法 |
CN113190759A (zh) * | 2021-05-21 | 2021-07-30 | 上海微盟企业发展有限公司 | 一种网页生成方法、装置、设备及计算机可读存储介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101477558A (zh) * | 2009-01-15 | 2009-07-08 | 腾讯科技(深圳)有限公司 | 浏览器标签管理方法及多页面浏览系统 |
CN102830972A (zh) * | 2012-08-14 | 2012-12-19 | 管重 | 互联网浏览器的多网页浏览装置 |
CN103970427A (zh) * | 2013-02-04 | 2014-08-06 | 腾讯科技(深圳)有限公司 | 网页页面的刷新方法和装置 |
-
2015
- 2015-05-21 CN CN201510263991.7A patent/CN106293352B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101477558A (zh) * | 2009-01-15 | 2009-07-08 | 腾讯科技(深圳)有限公司 | 浏览器标签管理方法及多页面浏览系统 |
CN102830972A (zh) * | 2012-08-14 | 2012-12-19 | 管重 | 互联网浏览器的多网页浏览装置 |
CN103970427A (zh) * | 2013-02-04 | 2014-08-06 | 腾讯科技(深圳)有限公司 | 网页页面的刷新方法和装置 |
Cited By (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107480218A (zh) * | 2017-07-31 | 2017-12-15 | 阿里巴巴集团控股有限公司 | 网页显示方法及装置、电子设备、存储介质 |
CN107480218B (zh) * | 2017-07-31 | 2020-10-20 | 创新先进技术有限公司 | 网页显示方法及装置、电子设备、存储介质 |
CN108399222B (zh) * | 2018-02-11 | 2020-09-01 | 北京奇艺世纪科技有限公司 | 一种页面刷新方法及装置 |
CN108399222A (zh) * | 2018-02-11 | 2018-08-14 | 北京奇艺世纪科技有限公司 | 一种页面刷新方法及装置 |
CN108958876A (zh) * | 2018-07-23 | 2018-12-07 | 郑州云海信息技术有限公司 | 浏览器页面的显示方法和装置 |
CN109240568A (zh) * | 2018-08-21 | 2019-01-18 | 杭州迪普科技股份有限公司 | 一种菜单页面的显示方法、装置及存储介质 |
CN110069188A (zh) * | 2019-03-08 | 2019-07-30 | 维沃移动通信有限公司 | 标识显示方法及终端设备 |
CN110069188B (zh) * | 2019-03-08 | 2021-01-29 | 维沃移动通信有限公司 | 标识显示方法及终端设备 |
CN112241498A (zh) * | 2019-07-18 | 2021-01-19 | 腾讯科技(深圳)有限公司 | 页面内容显示方法、装置、可读存储介质和计算机设备 |
CN112241498B (zh) * | 2019-07-18 | 2023-12-29 | 腾讯科技(深圳)有限公司 | 页面内容显示方法、装置、可读存储介质和计算机设备 |
CN111813410A (zh) * | 2020-07-08 | 2020-10-23 | 北京亚鸿世纪科技发展有限公司 | 浏览器数据可视化开发用于多页面联合展示的方法和装置 |
CN112068837A (zh) * | 2020-09-10 | 2020-12-11 | 浪潮软件科技有限公司 | 一种终端页面调转及数据保持的方法 |
CN112068837B (zh) * | 2020-09-10 | 2023-07-18 | 浪潮软件科技有限公司 | 一种终端页面调转及数据保持的方法 |
CN112558945A (zh) * | 2020-11-25 | 2021-03-26 | 紫光云技术有限公司 | 一种新型模块化页面设计方法 |
CN113190759A (zh) * | 2021-05-21 | 2021-07-30 | 上海微盟企业发展有限公司 | 一种网页生成方法、装置、设备及计算机可读存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN106293352B (zh) | 2020-03-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106293352A (zh) | 页面构建方法、终端及服务器 | |
CN107220094B (zh) | 页面加载方法、装置和电子设备 | |
CN110651251B (zh) | 用于自适应用户界面的系统和方法 | |
CN106484224B (zh) | 一种操作方法及终端 | |
CN103853729B (zh) | 页面加载方法及其系统 | |
CN105988860B (zh) | 执行应用程序的方法及移动装置 | |
CN105260420B (zh) | 一种用于在移动应用中提供目标页面的方法与设备 | |
CN104239139B (zh) | 一种处理开机自启动项目的方法、装置及终端 | |
CN104199684B (zh) | 浏览器冷启动的实现方法及装置 | |
CN106030487A (zh) | 用于控制屏幕的组成的方法及其电子设备 | |
US10860676B2 (en) | Method and system for controlling presentation of web resources in a browser window | |
CN109902255A (zh) | 页面混合浏览记录生成方法、装置、设备和存储介质 | |
CN105283845A (zh) | 显示对象预生成 | |
CN110046101A (zh) | 页面自动化测试方法、装置及计算机存储介质 | |
CN108121485A (zh) | 一种图标整理方法、终端及计算机可读存储介质 | |
CN105302461B (zh) | 一种用于在移动应用中提供目标页面的方法与设备 | |
WO2016036547A1 (en) | Semantic card view | |
CN108829371A (zh) | 界面控制方法、装置、存储介质及电子设备 | |
CN107329991A (zh) | 一种列表页访问和展示方法及其系统 | |
CN109471835A (zh) | 一种应用程序的页面显示方法、装置及存储介质 | |
CN105849758A (zh) | 多模式内容消费模型 | |
CN107515907B (zh) | 浏览器页面的显示方法和装置 | |
CN110069734A (zh) | 一种页面组件的展现方法和装置 | |
CN107577766A (zh) | 一种网页3d目标的加载方法及装置 | |
CN105630893B (zh) | 一种组图标题的显示方法和装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
TA01 | Transfer of patent application right |
Effective date of registration: 20200217 Address after: 518129 Bantian HUAWEI headquarters office building, Longgang District, Guangdong, Shenzhen Applicant after: HUAWEI TECHNOLOGIES Co.,Ltd. Address before: 210012 Ande Gate No. 94, Yuhuatai District, Jiangsu, Nanjing Applicant before: Huawei Technologies Co.,Ltd. |
|
TA01 | Transfer of patent application right |