本发明涉及前端开发领域,尤其涉及一种页面管理的方法以及相关装置。
背景技术:
前端即网站前台部分,运行在主机端,移动端等浏览器上展现给使用者浏览的网页(worldwideweb,web)。随着互联网技术的发展,超文本标记语言(hypertextmarkuplanguage,html)、级联样式表(cascadingstylesheet,css)以及爪哇脚本(javascript,js)等开发工具应用于前端开发中。
在单页web应用(singlepagewebapplication,spa)的场景下,生成的页面节点挂载于一个预先指定的根节点(rootnode)中,当旧页面被切换成新页面时,根节点下的被切换的旧页面被销毁,生成的新页面需要请求调用后台的数据,并挂载于该根节点中。
当使用者需要在若干个页面中来回切换时,都要重新生成新页面并挂载至根节点中,需要重新请求后台的数据,造成展示页面的用时增长,运行效率的降低。
技术实现要素:
本发明实施例提供了一种页面管理的方法以及相关装置,实现了在spa场景下,当使用者需要在若干个页面来回切换时,由于当前显示的页面与待显示的页面都处于缓存队列中,并均挂载于根节点中,因此不需要重新生成页面,降低了展示页面的用时,提升了运行效率。
有鉴于此,本发明第一方面提供了一种页面管理的方法,包括:
接收页面切换请求;
根据所述页面切换请求,获取当前显示的第一页面以及待显示的第二页面;
判断所述第二页面是否存在于缓存队列;
若所述第二页面存在于所述缓存队列,则隐藏所述第一页面;
显示所述第二页面,并将所述第二页面更新至所述缓存队列。
结合本发明实施例的第一方面,在第一方面的第一种可能的实现方式中,所述判断所述第二页面是否存在于缓存队列之后,所述方法还包括:
若所述第二页面不存在于所述缓存队列,则隐藏所述第一页面;
将所述第二页面添加至所述缓存队列;
显示所述第二页面。
结合本发明实施例的第一方面的第一种可能的实现方式,在第一方面的第二种可能的实现方式中,所述方法还包括:
触发页面清除器,所述页面清除器用于清除所述缓存队列中缓存的页面;
当达到预设的运行时间时,判断当前所述缓存队列中缓存的页面数量是否大于最大可缓存的页面数量;
若当前所述缓存队列中所述缓存的页面数量大于所述最大可缓存的页面数量,则删除所述缓存队列中缓存时间最早的n个页面,所述n为超出所述最大可缓存的页面数量的数量。
结合本发明实施例的第一方面的第二种可能的实现方式,本发明实施例的第一方面的第三种可能的实现方式中,所述判断当前所述缓存队列中缓存的页面数量是否大于最大可缓存的页面数量之后,所述方法还包括:
若当前所述缓存队列中缓存的页面数量小于或等于最大可缓存的页面数量,则关闭所述页面清除器。
结合本发明实施例的第一方面至第一方面的第三种可能的实现方式中的任一种实现方式,本发明实施例的第一方面的第四种可能的实现方式中,所述根据所述页面切换请求,获取当前显示的第一页面以及待显示的第二页面,包括:
监听第一统一资源定位符url以及第二统一资源定位符url;
当所述第一url与所述第二url发生变化时,获取所述第一url对应的当前显示的第一页面以及所述第二url对应的待显示的第二页面。
本发明第二方面提供了一种页面管理的装置,所述页面管理的装置包括:
接收模块,用于接收页面切换请求;
获取模块,用于根据所述页面切换请求,获取当前显示的第一页面以及待显示的第二页面;
判断模块,用于判断所述第二页面是否存在于缓存队列;
隐藏模块,用于若所述第二页面存在于所述缓存队列,则隐藏所述第一页面;
更新模块,用于显示所述第二页面,并将所述第二页面更新至所述缓存队列。
结合本发明实施例的第二方面,在第二方面的第一种可能的实施例中,所述页面管理的装置还包括添加模块以及显示模块;
所述隐藏模块,还用于若所述第二页面不存在于所述缓存队列,则隐藏所述第一页面;
所述添加模块,用于将所述第二页面添加至所述缓存队列;
所述显示模块,用于显示所述第二页面。
结合本发明实施例的第二方面的第一种可能的实施例,在第二方面的第二种可能的实施例中,所述页面管理装置还包括触发模块以及删除模块;
所述触发模块,用于触发页面清除器,所述页面清除器用于清除所述缓存队列中缓存的页面;
所述判断模块,还用于当达到预设的运行时间时,判断当前所述缓存队列中缓存的页面数量是否大于最大可缓存的页面数量;
所述删除模块,用于若当前所述缓存队列中所述缓存的页面数量大于所述最大可缓存的页面数量,则删除所述缓存队列中缓存时间最早的n个页面,所述n为超出所述最大可缓存的页面数量的数量。
结合本发明实施例的第二方面的第二种可能的实施例,在第二方面的第三种可能的实施例中,所述页面管理装置还包括关闭模块;
所述关闭模块,用于若当前所述缓存队列中缓存的页面数量小于或等于最大可缓存的页面数量,则关闭所述页面清除器。
结合本发明实施例的第二方面至第一方面的第三种可能的实现方式中的任一种实现方式,本发明实施例的第二方面的第四种可能的实现方式中所述页面管理装置还包括监听模块;
所述监听模块,用于监听第一统一资源定位符url以及第二统一资源定位符url;
所述获取模块,还用于当所述第一url与所述第二url发生变化时,获取所述第一url对应的当前显示的第一页面以及所述第二url对应的待显示的第二页面。
所述页面管理装置还包括监听模块;
所述监听模块,用于监听第一统一资源定位符url以及第二统一资源定位符url;
所述获取模块,还用于当所述第一url与所述第二url发生变化时,获取所述第一url对应的当前显示的第一页面以及所述第二url对应的待显示的第二页面。
从以上技术方案可以看出,本发明实施例具有以下优点:
本发明实施例中,提供了一种页面管理的方法,接收页面切换请求;根据所述页面切换请求,获取当前显示的第一页面以及待显示的第二页面;判断所述第二页面是否存在于缓存队列;若所述第二页面存在于所述缓存队列,则隐藏所述第一页面;显示所述第二页面,并将所述第二页面更新至所述缓存队列的队尾。通过上述方式,由于当前显示的页面与待显示的页面都处于缓存队列中,并均挂载于根节点中,当使用者需要在若干个页面来回切换时,不需要重新生成页面,降低了展示页面的用时,提升了运行效率。
附图说明
图1为本发明实施例中页面管理的方法的应用场景的界面示意图;
图2为本发明实施例中页面管理的方法的应用场景的流程示意图;
图3为本发明实施例中页面管理的方法的一个实施例示意图;
图4为本发明实施例中页面管理装置的一个实施例示意图;
图5为本发明实施例中页面管理装置的另一个实施例示意图;
图6为本发明实施例中页面管理装置的另一个实施例示意图;
图7为本发明实施例中页面管理装置的另一个实施例示意图;
图8为本发明实施例中页面管理装置的另一个实施例示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”、“第四”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的实施例能够以除了在这里图示或描述的内容以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
本发明实施例提供了一种页面管理的方法以及相关装置,实现了在spa场景下,当使用者需要在若干个页面来回切换时,由于当前显示的页面与待显示的页面都处于缓存队列中,并均挂载于根节点中,因此不需要重新生成页面,降低了展示页面的用时,提升了运行效率。
应理解,本发明提出的页面管理的方法以及相关装置,应用于spa场景下。
在传统网络应用设计中,网络应用由数个不同的网页构成。为了在应用内渲染特定网页,执行以下交互集合:客户端设备处的网络浏览器(使用http消息)从网络服务器请求特定网页;作为响应,网络服务器(使用http)将用于页面的代码传输回给网络浏览器,所述代码包括例如html、javascript和css;网络浏览器然后加载代码并且渲染页面,由此使得用户能够查看页面并且与页面交互。当用户随后想要查看应用内的不同内容时,用户将点击页面上指向应用内的不同页面的超链接或输入,并且然后针对不同页面执行以上提及的请求/响应/加载/渲染过程。
单页web应用(spa)是在单个网页内操作的网络应用。在spa中,用于单个网页的内容由网络服务器发送给网络浏览器,并且如上文关于传统网络应用所描述的那样加载/渲染所述页面。随后,当用户想要查看应用内的不同内容时,用户将点击页面上的超链接或输入。但是,代替于以上文关于传统网络应用所描述的方式导航到不同页面,将保持加载同一页面,并且将动态地更新其内容。这种动态更新可以以数个不同的方式达成;它可以牵涉到例如网络浏览器执行后台http提取以得到新内容,(经由javascript代码)更新页面的文档对象模型(dom)和/或其它技术。可以用于创建spa的网络应用框架是angularjs。angularjs是一种javascript框架。当开发angularjs应用时,开发者根据angularjs的模板语言创建html模板;html模板包括嵌入有angularjs脚本和其它angularjs编码构造(诸如指引)的html。在网络浏览器处,加载angularjsjavascript库,并且对html模板进行解译,使得所得页面看起来如在模板中定义的那样并且如在模板中定义的那样运转。本发明以angularjs框架进行说明,需要说明的是,本发明还可以应用于vue、react等其它框架中,具体实现方式类似,此处不再赘述。
为了便于理解,请参阅图1,图1为本发明实施例中页面管理的方法的应用场景的界面示意图,下面结合图1展开说明。
图1中,mainviewport为主页面,在mainviewport下有多个已缓存的页面称为viewport,mainviewport为动态页面viewport的根节点,图中举了viewport-1、viewport-2以及viewport-3这三个页面,页面框中画有斜线表示该页面处于显示状态,未画斜线表示处于隐藏状态。图1的区域l1中viewport-3页面处于显示,viewport-1和viewport-2处于隐藏状态;区域l2中viewport-2处于显示状态,viewport-1和viewport-3处于隐藏状态。图1表示的是,当页面切换时,显示的页面从viewport-3切换成viewport-2,l1中被切换的viewport-3,将状态设置为隐藏状态,此时仍处于缓存列表中,l1中处于缓存列表中的viewport-2,将其隐藏的状态更改为显示状态并显示出来,如l2所示。
本发明的实现流程请参阅图2,图2为本发明实施例中页面管理的方法的应用场景的流程示意图。
步骤s1中,监听hashchange事件,运行有该spa应用的浏览器由于是运行于angularjs框架内,因此具有监听事件的功能,监听hashchange事件当监听到hash(散列)值发生变化时,将该浏览器的url(统一资源定位符)与动态页面viewport之间建立映射关系,该映射规则包括url与对应的js文件与viewport之间建立联系;
步骤s2中,监听viewportchange事件,该浏览器监听viewportchange事件,当url发生变化时,对应的js文件发生变化,导致关联的viewport发生变化。将发生变化的viewport命名为targetviewport(目标viewport),将未发生变化的viewport命名为currviewport(当前viewport);
步骤s3中,判断targetviewport是否在cacheviewports中,该浏览器判断targetviewport即目标viewport是否在cacheviewports即页面的缓存队列中,若targetviewport在cacheviewports中则进入步骤s4,若targetviewport不在cacheviewports中则进入步骤s7;
步骤s4中,隐藏currviewport,当targetviewport在cacheviewports中后,该浏览器会隐藏当前的页面currviewport,即currviewport使用样式“display:none”;
步骤s5中,显示targetviewport,targetviewport删除样式“display:none”,即显示targetviewport,其中需要说明的是,可以先执行步骤s4也可以先执行步骤s5,不对步骤s4与步骤s5之间的执行顺序进行限定;
步骤s6中,将targetviewport更新到cacheviewports队尾,当显示targetviewport之后,该浏览器将targetviewport更新至缓存队列cacheviewports的末端,即队尾;
步骤s7中,将targetviewport加入到cacheviewports队尾,若targetviewport不在cacheviewports中,该浏览器将targetviewport加入至缓存队列cacheviewports的末端,即队尾;
步骤s8中,隐藏currviewport,该浏览器会隐藏当前的页面currviewport,即currviewport使用样式“display:none”;
步骤s9中,显示targetviewport,targetviewport删除样式“display:none”,即显示targetviewport,其中需要说明的是,可以先执行步骤s8也可以先执行步骤s9,不对步骤s8与步骤s9之间的执行顺序进行限定;
步骤s10中,触发页面清除器,当该浏览器隐藏currviewport与显示targetviewport之后,会触发页面清除器,该页面清除器为清除缓存队列中过期缓存对象的清除器,并设置倒计时时间,该倒计时时间称为间隔运行时间intervaltime,该页面清除器又称为js定时器,可以以该段js代码实现代码如下:“setinterval(code,millisec,lang)”;
步骤s11中,等待intervaltime,开始倒计时的计时,并等待该段间隔运行时间intervaltime的结束,一般该段倒计时时间设置为5秒;
步骤s12中,判断cacheviewports成员数量是否大于maxcachecount,该浏览器在intervaltime倒计时结束后,判断缓存队列cacheviewports的成员数量是否大于缓存队列可允许最大成员数量maxcachecount,若缓存队列cacheviewports的成员数量大于缓存队列可允许最大成员数量maxcachecount,则进入步骤s13,若缓存队列cacheviewports的成员数量小于或等于缓存队列可允许最大成员数量maxcachecount,则进入步骤s11,重新等待intervaltime;
步骤s13中,从cacheviewports的队列头部删除n个viewports,当缓存队列cacheviewports的成员数量大于缓存队列可允许最大成员数量maxcachecount时,该浏览器从缓存队列cacheviewports的队列头部及最近最不经常使用的位置删除n个viewports,删除的个数n为缓存队列cacheviewports的当前的成员数量减去缓存队列可允许最大成员数量maxcachecount,当删除成功后,执行步骤s11等待下一次的intervaltime。
下面对本发明中页面管理的方法进行介绍,请参阅图3,图3为本发明实施例中页面管理的方法的一个实施例示意图,包括:
101、接收页面切换请求;
本实施例中,浏览器接收页面切换请求,该页面切换请求包括从图形交互界面gui中接收还包括从命令行界面接收,此处不做限定,运行有该spa应用的浏览器由于是运行于angularjs框架内,当监听到hash(散列)值发生变化时,称为接收到页面切换请求,该hash值发生变化的过程称为页面切换请求;
102、根据页面切换请求,获取当前显示的第一页面以及待显示的第二页面;
本实施例中,浏览器根据接收到的页面切换请求,该浏览器监听viewportchange事件,由于页面存在与其对应的js文件,当监听到js文件发生变化时,该变化的js文件对应的页面为待显示的第二页面,此时未发生变化的js文件对应的页面为当前显示的页面第一页面,第一页面与第二页面均为挂载至根节点的页面。
103、判断第二页面是否存在于缓存队列;
本实施例中,浏览器会判断缓存队列中是否存在第二页面,判断的方法包括在缓存队列中查找是否存在向关联的标识,或查找第二页面对应的文件中是否有标记已存在于缓存队列的标识,此处不做限定。
104、若第二页面存在于缓存队列,则隐藏第一页面;
本实施例中,若浏览器判断当前缓存队列中存在第二页面,则隐藏第一页面,隐藏的方法包括在当前第一页面对应的js文件中使用样式“display:none”或在当前第一页面中使用样式“display:none”,此处不做限定。
105、显示第二页面,并将第二页面更新至缓存队列;
本实施例中,在隐藏了第一页面后,显示之前未显示的第二页面,显示的方法包括删除当前第二页面对应的js文件中的样式“display:none”或在当前第二页面中删除样式“display:none”,然后将第二页面更新至缓存队列的队尾。
本发明实施例中,提供了一种页面管理的方法,首先,浏览器接收页面切换请求,然后,根据页面切换请求,获取当前显示的第一页面以及待显示的第二页面,再次,判断第二页面是否存在于缓存队列,若第二页面存在于缓存队列,则隐藏第一页面,最后,显示第二页面,并将第二页面更新至缓存队列。通过上述方式,由于当前显示的页面与待显示的页面都处于缓存队列中,并均挂载于根节点中,当使用者需要在若干个页面来回切换时,不需要重新生成页面,降低了展示页面的用时,提升了运行效率。
可选地,在图3对应实施例的基础上,本发明实施例提供的第二种数据读取的方法的实施例中,判断第二页面是否存在于缓存队列之后,方法还包括:
若第二页面不存在于缓存队列,则隐藏第一页面;
将第二页面添加至缓存队列;
显示第二页面。
本实施例中,当浏览器判断第二页面不存在与缓存队列中时,隐藏第一页面,隐藏的方法包括在第一页面中使用样式“display:none”;然后将第二页面添加至缓存队列中,添加的方式包括向缓存队列中添加第二页面的标识或在第二页面中添加缓存队列的标识,此处不做限定,最后显示第二页面,显示的方式包括:删除样式“display:none”。
其中,隐藏第一页面的步骤与将第二页面添加至缓存队列,显示第二页面的步骤没有时序上的限制,既可以先将第二页面添加至缓存队列,显示第二页面,再隐藏第一页面,也可以先隐藏第一页面,再将第二页面添加至缓存队列,显示第二页面,此处不做限定。
本发明实施例中,当第二页面不存在于缓存队列中时,隐藏第一页面,可以将第二页面添加至缓存队列中再显示第二页面,提供了一种在第二页面不存在与缓存队列时,显示第二页面的方法,提升了方案的实现灵活性。
可选地,在上述图3对应的实施例的基础上,本发明实施例提供的数据读取的方法的第三个实施例中,显示第二页面之后,方法还包括:
触发页面清除器,页面清除器用于清除缓存队列中缓存的页面;
当达到预设的运行时间时,判断当前缓存队列中缓存的页面数量是否大于最大可缓存的页面数量;
若当前缓存队列中缓存的页面数量大于最大可缓存的页面数量,则删除缓存队列中缓存时间最早的n个页面,n为超出最大可缓存的页面数量的数量。
本实施例中,在显示第二页面之后,触发页面清除器,该页面清除器为清除缓存队列中过期缓存对象的清除器,该页面清除器又称为js定时器,可以以该段js代码实现代码如下:“setinterval(code,millisec,lang)”,并设定预设的运行时间,当达到预设的运行时间时,判断当前缓存队列中缓存的页面数量是否大于最大可缓存的页面数量,若大于最大可换成的页面数量,则该浏览器从缓存队列的队列头部即最近最不经常使用的位置删除n个缓存页面,删除的个数n为缓存队列的当前的成员数量减去缓存队列可允许最大成员数量。
本发明实施例中,提出了一种页面清除器,当浏览器检测到缓存列表中的缓存页面数目大于最大可缓存的页面数量时,用以清除缓存列表中的队列头部即最近最不经常使用的位置删除n个缓存页面,删除的个数n为缓存队列的当前的成员数量减去缓存队列可允许最大成员数量。通过及时清除缓存队列中的过期缓存页面,使得缓存队列能够缓存需要缓存的页面,提升的方案的可实现性。
可选地,在上述图3对应的实施例的基础上,本发明实施例提供的数据读取的方法的第四个实施例中,判断当前缓存队列中缓存的页面数量是否大于最大可缓存的页面数量之后,方法还包括:
若当前缓存队列中缓存的页面数量小于或等于最大可缓存的页面数量,则关闭页面清除器。
本实施例中,当浏览器检测到缓存列表中的缓存页面数目小于或等于最大可缓存的页面数量时,关闭页面清除器,等待下一次启动页面清除器,或者保持页面清除器的启动状态,对等待运行时间重置,以等待下次运行页面清除业务。
本发明实施例中,提供了当浏览器检测到缓存列表中的缓存页面数目小于或等于最大可缓存的页面数量时,页面清除器如何工作的方法,增加了方案的实现灵活性。
可选地,在上述图3对应的第一至第四个实施例中任一项的基础上,本发明实施例提供的数据读取的方法第五个可选实施例中,根据页面切换请求,获取当前显示的第一页面以及待显示的第二页面,包括:
监听第一统一资源定位符url以及第二统一资源定位符url;
当第一url与第二url发生变化时,获取第一url对应的当前显示的第一页面以及第二url对应的待显示的第二页面。
本实施例中,运行有该spa应用的浏览器由于是运行于angularjs框架内,因此具有监听事件的功能当监听到hash(散列)值发生变化时,将该浏览器的url与页面之间建立映射关系,该映射规则包括url与对应的js文件与页面之间建立联系,当url发生变化时,对应的js文件发生变化,导致关联的页面发生变化。因此当第一url与第二url发生变化时,获取第一url对应的当前显示的第一页面以及第二url对应的待显示的第二页面。
本发明实施例中,提出了一种区分第一页面与第二页面的方法,是通过第一url与第二url确定所对应的第一页面以及第二页面,提升了方案的可行性。
下面对本发明中数据读取装置进行详细描述,请参阅图4,图4为本发明实施例中页面管理装置的一个实施例示意图,本发明实施例提供的页面管理装置20的第一个实施例中;
接收模块201,用于接收页面切换请求;
获取模块202,用于根据页面切换请求,获取当前显示的第一页面以及待显示的第二页面;
判断模块203,用于判断第二页面是否存在于缓存队列;
隐藏模块204,用于若第二页面存在于缓存队列,则隐藏第一页面;
更新模块205,用于显示第二页面,并将第二页面更新至缓存队列。
本实施例中,接收模块201,用于接收页面切换请求;获取模块202,用于根据页面切换请求,获取当前显示的第一页面以及待显示的第二页面;判断模块203,用于判断第二页面是否存在于缓存队列;隐藏模块204,用于若第二页面存在于缓存队列,则隐藏第一页面;更新模块205,用于显示第二页面,并将第二页面更新至缓存队列。
本发明实施例中,提供了一种页面管理的方法,首先,浏览器接收页面切换请求,然后,根据页面切换请求,获取当前显示的第一页面以及待显示的第二页面,再次,判断第二页面是否存在于缓存队列,若第二页面存在于缓存队列,则隐藏第一页面,最后,显示第二页面,并将第二页面更新至缓存队列。通过上述方式,由于当前显示的页面与待显示的页面都处于缓存队列中,并均挂载于根节点中,当使用者需要在若干个页面来回切换时,不需要重新生成页面,降低了展示页面的用时,提升了运行效率。
可选地,在上述图4对应的实施例的基础上,请参阅图5,本发明实施例提供的页面管理装置20的第二个实施例中,页面管理的装置还包括添加模块以及显示模块;
隐藏模块204,还用于若第二页面不存在于缓存队列,则隐藏第一页面;
添加模块206,用于将第二页面添加至缓存队列;
显示模块207,用于显示第二页面。
本发明实施例中,当第二页面不存在于缓存队列中时,隐藏第一页面,可以将第二页面添加至缓存队列中再显示第二页面,提供了一种在第二页面不存在与缓存队列时,显示第二页面的方法,提升了方案的实现灵活性。
可选地,在上述图5对应的实施例的基础上,请参阅图6本发明实施例提供的页面管理装置20的第三个实施例中,页面管理装置还包括触发模块以及删除模块;
触发模块208,用于触发页面清除器,页面清除器用于清除缓存队列中缓存的页面;
判断模块203,还用于当达到预设的运行时间时,判断当前缓存队列中缓存的页面数量是否大于最大可缓存的页面数量;
删除模块209,用于若当前缓存队列中缓存的页面数量大于最大可缓存的页面数量,则删除缓存队列中缓存时间最早的n个页面,n为超出最大可缓存的页面数量的数量。
本发明实施例中,提出了一种页面清除器,当浏览器检测到缓存列表中的缓存页面数目大于最大可缓存的页面数量时,用以清除缓存列表中的队列头部即最近最不经常使用的位置删除n个缓存页面,删除的个数n为缓存队列的当前的成员数量减去缓存队列可允许最大成员数量。通过及时清除缓存队列中的过期缓存页面,使得缓存队列能够缓存需要缓存的页面,提升的方案的可实现性。
可选地,在上述图6对应的实施例的基础上,请参阅图7本发明实施例提供的页面管理装置20的第四个实施例中,页面管理装置还包括关闭模块;
关闭模块210,用于若当前缓存队列中缓存的页面数量小于或等于最大可缓存的页面数量,则关闭页面清除器。
本发明实施例中,提供了当浏览器检测到缓存列表中的缓存页面数目小于或等于最大可缓存的页面数量时,页面清除器如何工作的方法,增加了方案的实现灵活性。
可选地,在上述图4至图7对应的页面管理装置20的第一个至第四个实施例中任一项的基础上,如图8所示,本发明实施例提供的页面管理装置20的第五个实施例中,页面管理装置还包括监听模块;
监听模块211,用于监听第一统一资源定位符url以及第二统一资源定位符url;
获取模块202,还用于当第一url与第二url发生变化时,获取第一url对应的当前显示的第一页面以及第二url对应的待显示的第二页面。
本发明实施例中,提出了一种区分第一页面与第二页面的方法,是通过第一url与第二url确定所对应的第一页面以及第二页面,提升了方案的可行性。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本发明所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(read-onlymemory,rom)、随机存取存储器(randomaccessmemory,ram)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。