CN110457613A - 页面数据加载控制方法、装置、计算机设备及存储介质 - Google Patents
页面数据加载控制方法、装置、计算机设备及存储介质 Download PDFInfo
- Publication number
- CN110457613A CN110457613A CN201910441473.8A CN201910441473A CN110457613A CN 110457613 A CN110457613 A CN 110457613A CN 201910441473 A CN201910441473 A CN 201910441473A CN 110457613 A CN110457613 A CN 110457613A
- Authority
- CN
- China
- Prior art keywords
- page data
- page
- terminal
- data
- current display
- 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.)
- Pending
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/957—Browsing optimisation, e.g. caching or content distillation
- G06F16/9574—Browsing optimisation, e.g. caching or content distillation of access to content, e.g. by caching
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/958—Organisation or management of web site content, e.g. publishing, maintaining pages or automatic linking
- G06F16/972—Access to data in other repository systems, e.g. legacy data or dynamic Web page generation
Landscapes
- Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本发明公开了一种页面数据加载控制方法、装置、计算机设备及存储介质,其方法包括:接收作用于终端界面的目标操作指令,所述目标操作指令中包括显示于所述终端当前显示页面中的第一页面数据对应的第一位置参数;将所述第一位置参数与预设的位置阈值进行比对,以确定所述终端是否执行页面数据加载操作;当确定所述终端执行所述页面数据加载操作时,从预设的数组容器已缓存的页面数据中获取所述目标操作指令对应的第二页面数据与所述第一页面数据进行拼接,以将所述第二页面数据显示在所述终端当前显示页面中。本发明进行页面加载的数据直接从数组容器中提取调用,减少了用户等待的时间,降低了白屏现象的出现,避免了浏览器卡顿。
Description
技术领域
本发明涉及互联网技术领域,具体而言,本发明涉及一种页面数据加载控制方法、装置、计算机设备及存储介质。
背景技术
随着互联网技术的发展,越来越多人通过浏览网络获取信息,由于信息对应的数据通常是以列表的方式在界面中显示,而且列表中的每个列表项包含一条信息对应的列表数据,用户通过点击列表数据对信息进行获取。相关现有技术中,通常会采用功能插件来处理页面数据,生成下拉列表。无论该功能插件时系统原生的还是组件形成的,以这种方式加载页面数据时,在列表数据量大的情况下容易导致浏览器卡顿,而且容易使浏览器出现等待时间延长、白屏等现象。
发明内容
本发明的目的旨在至少解决上述技术缺陷之一,特别是在加载页面数据时列表数据量大的情况容易导致浏览器卡顿,使浏览器出现等待时间延长、白屏等等技术缺陷。
为解决上述技术问题,本发明提供了一种页面数据加载控制方法,包括以下步骤:
接收作用于终端界面的目标操作指令,所述目标操作指令中包括显示于所述终端当前显示页面中的第一页面数据对应的第一位置参数;
将所述第一位置参数与预设的位置阈值进行比对,以确定所述终端是否执行页面数据加载操作;
当确定所述终端执行所述页面数据加载操作时,从预设的数组容器已缓存的页面数据中获取所述目标操作指令对应的第二页面数据与所述第一页面数据进行拼接,以将所述第二页面数据显示在所述终端当前显示页面中。
可选地,所述将所述第一位置参数与所述终端的初始位置参数进行比对,以确定是否执行页面数据加载操作的步骤,包括:
识别所述第一页面数据与所述终端界面之间的相对位置;
根据所述相对位置判断所述第一页面数据中预设的临界点位置是否位于所述终端界面中;
当确定所述第一页面数据中预设的临界点位置位于所述终端界面中时,触发所述终端执行页面数据加载操作。
可选地,所述预设的数组容器缓存的页面数据中始终包括在所述终端当前显示页面显示的第一页面数据及其上一页和下一页对应的页面数据。
可选地,所述当确定所述终端执行所述页面数据加载操作时,从预设的数组容器已缓存的页面数据中获取所述目标操作指令对应的第二页面数据与所述第一页面数据进行拼接,以将所述第二页面数据显示在所述终端当前显示页面中的步骤,包括:
识别所述目标操作指令对应的数据加载方向;
根据所述目标操作指令对应的数据加载方向从所述数组容器缓存的页面数据中获取待显示于所述终端当前显示页面的第二页面数据;
将所述第二页面数据与在所述终端当前显示页面中显示的第一页面数据进行拼接,以使所述终端对所述第二页面数据进行显示。
可选地,所述当确定所述终端执行所述页面数据加载操作时,从预设的数组容器已缓存的页面数据中获取所述目标操作指令对应的第二页面数据与所述第一页面数据进行拼接,以将所述第二页面数据显示在所述终端当前显示页面中的步骤之后,还可以包括:
监听所述终端当前显示页面中页面数据对应的第一位置参数的变化,以判断所述终端当前显示页面中的页面数据是否显示为第二页面数据;
当所述终端当前显示页面中的页面数据显示为第二页面数据时,按照所述目标操作指令对应的数据加载方向更新所述数组容器中缓存的页面数据。
可选地,所述接收作用于终端界面的目标操作指令,所述目标操作指令中包括显示于所述终端当前显示页面中的第一页面数据对应的第一位置参数的步骤之前,还包括:
通过二分查找的方式获取所述第一页面数据对应的第一页面参数。
为解决上述技术问题,本发明还提供了一种页面数据加载控制装置,包括:
接收模块,用于接收作用于终端界面的目标操作指令,所述目标操作指令中包括显示于所述终端当前显示页面中的第一页面数据对应的第一位置参数;
处理模块,用于将所述第一位置参数与预设的位置阈值进行比对,以确定所述终端是否执行页面数据加载操作;
执行模块,用于当确定所述终端执行所述页面数据加载操作时,从预设的数组容器已缓存的页面数据中获取所述目标操作指令对应的第二页面数据与所述第一页面数据进行拼接,以将所述第二页面数据显示在所述终端当前显示页面中。
可选地,所述页面数据加载控制装置还包括:
第一识别子模块,用于识别所述第一页面数据与所述终端界面之间的相对位置;
第一处理子模块,用于根据所述相对位置判断所述第一页面数据中预设的临界点位置是否位于所述终端界面中;
第一执行子模块,用于当确定所述第一页面数据中预设的临界点位置位于所述终端界面中时,触发所述终端执行页面数据加载操作。
可选地,所述页面数据加载控制装置还包括:所述预设的数组容器缓存的页面数据中始终包括在所述终端当前显示页面显示的第一页面数据及其上一页和下一页对应的页面数据。
可选地,所述页面数据加载控制装置还包括:
第二识别子模块,用于识别所述目标操作指令对应的数据加载方向;
第二处理子模块,用于根据所述目标操作指令对应的数据加载方向从所述数组容器缓存的页面数据中获取待显示于所述终端当前显示页面的第二页面数据;
第二执行子模块,用于将所述第二页面数据与在所述终端当前显示页面中显示的第一页面数据进行拼接,以使所述终端对所述第二页面数据进行显示。
可选地,所述页面数据加载控制装置还包括:
第一监听子模块,用于监听所述终端当前显示页面中页面数据对应的第一位置参数的变化,以判断所述终端当前显示页面中的页面数据是否显示为第二页面数据;
第三执行子模块,用于当所述终端当前显示页面中的页面数据显示为第二页面数据时,按照所述目标操作指令对应的数据加载方向更新所述数组容器中缓存的页面数据。
可选地,所述页面数据加载控制装置还包括:
第一获取子模块,用于通过二分查找的方式获取所述第一页面数据对应的第一页面参数。
为解决上述技术问题,本发明还提供一种计算机设备,包括存储器和处理器,所述存储器中存储有计算机可读指令,所述计算机可读指令被所述处理器执行时,使得所述处理器执行上述页面数据加载控制方法的步骤。
为解决上述技术问题,本发明还提供一种存储有计算机可读指令的存储介质,所述计算机可读指令被一个或多个处理器执行时,使得一个或多个处理器执行上述页面数据加载控制方法的步骤。
本发明的有益效果在于:
本发明通过使用分页的思想来对下拉列表数据结构进行优化,若向上滚动则对应加载上一页的数据,若向下滚动则对应加载下一页的数据,数据实体列表始终只具有一定的数据量,能避免浏览器卡顿现象的发生。针对动态获取数据的情况,把对庞大数据的一次网络情况转化为多次小数据的请求,在预设的数组容器中,不仅缓存有终端当前显示页面的页面数据内容,同时还缓存有所述终端当前显示页面对应的上一页和下一页的数据进行缓存,以使得终端在执行滚动操作获取上一页或下一页的页面数据时可直接从所述预设的数字容器已缓存的数据中直接提取调用,能够在很大程度上减少用户等待的时间,并降低白屏现象出现的概率。
本发明附加的方面和优点将在下面的描述中部分给出,这些将从下面的描述中变得明显,或通过本发明的实践了解到。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的页面数据加载控制方法的基本方法流程示意图;
图2为本发明实施例提供的页面数据加载控制方法中确定是否执行页面数据加载操作的一种方法流程示意图;
图3为本发明实施例提供的页面数据加载控制方法中确定终端是否执行页面数据加载操作的页面状态示意图;
图4为本发明实施例提供的页面数据加载控制方法中从预设的数组容器已缓存的页面数据中获取目标操作指令对应的第二页面数据与第一页面数据进行拼接的一种方法流程示意图;
图5为本发明实施例提供的页面数据加载方法中对数组容器中缓存的页面数据进行更新处理的一种方法流程示意图;
图6为本发明实施例提供的页面数据加载控制装置基本结构框图;
图7为本发明实施例提供的计算机设备基本结构框图。
具体实施方式
为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述。
在本发明的说明书和权利要求书及上述附图中的描述的一些流程中,包含了按照特定顺序出现的多个操作,但是应该清楚了解,这些操作可以不按照其在本文中出现的顺序来执行或并行执行,且该操作的序号仅仅是用于区分开各个不同的操作,序号本身不代表任何的执行顺序。另外,这些流程可以包括更多或更少的操作,并且这些操作可以按顺序执行或并行执行。需要说明的是,本文中的“第一”、“第二”等描述,是用于区分不同的消息、设备、模块等,不代表先后顺序,也不限定“第一”和“第二”是不同的类型。
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域技术人员在没有创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
实施例
本技术领域技术人员可以理解,这里所使用的“终端”、“终端设备”既包括无线信号接收器的设备,其仅具备无发射能力的无线信号接收器的设备,又包括接收和发射硬件的设备,其具有能够在双向通信链路上,执行双向通信的接收和发射硬件的设备。这种设备可以包括:蜂窝或其他通信设备,其具有单线路显示器或多线路显示器或没有多线路显示器的蜂窝或其他通信设备;PCS(Personal Communications Service,个人通信系统),其可以组合语音、数据处理、传真和/或数据通信能力;PDA(Personal Digital Assistant,个人数字助理),其可以包括射频接收器、寻呼机、互联网/内联网访问、网络浏览器、记事本、日历和/或GPS(Global Positioning System,全球定位系统)接收器;常规膝上型和/或掌上型计算机或其他设备,其具有和/或包括射频接收器的常规膝上型和/或掌上型计算机或其他设备。这里所使用的“终端”、“终端设备”可以是便携式、可运输、安装在交通工具(航空、海运和/或陆地)中的,或者适合于和/或配置为在本地运行,和/或以分布形式,运行在地球和/或空间的任何其他位置运行。这里所使用的“终端”、“终端设备”还可以是通信终端、上网终端、音乐/视频播放终端,例如可以是PDA、MID(Mobile Internet Device,移动互联网设备)和/或具有音乐/视频播放功能的移动电话,也可以是智能电视、机顶盒等设备。
本实施例中提及的用户终端即为上述的终端。
请参阅图1,图1为本发明实施例提供的页面数据加载控制方法的基本方法流程示意图。
如图1所示,所述页面数据加载控制方法,包括以下步骤:
S100:接收作用于终端界面的目标操作指令,所述目标操作指令中包括显示于所述终端当前显示页面中的第一页面数据对应的第一位置参数。
在终端的实际应用中,用户通常通过对终端界面进行操作来浏览网页以及获取自己需要的信息时,信息对应的数据通常以列表的方式显示于终端界面。由于终端显示界面有限,所以终端将所述数据列表中的信息数据按列表项进行分页显示,且所述数据列表显示于所述终端当前显示页面的页面数据均具有表征其对应在整个数据列表中所处位置的位置参数。在本实施例中,当用户在所述终端界面上执行动作事件时触发目标操作指令,所述目标操作指令可以包括滚动操作指令,如向上滚动操作指令和向下滚动操作指令等。一旦用户在所述终端的界面上执行动作事件,显示于所述终端当前显示页面中的第一页面数据就会发生变化,其对应的第一位置参数也会随之产生变化。因而,系统通过监听作用于所述终端界面的动作事件来获取所述终端当前显示页面中的第一页面数据对应的第一位置参数。其中,位置参数包括startInd参数,表征终端当前显示页面(可见区域)的起始索引;endInd参数,表征终端当前显示页面(可见区域)的结束索引;tempData参数,表征终端当前显示页面(可见区域)的数据;以及startOffset参数,表征终端当前显示页面(可见区域)起始序号对应的数据在整个列表中的偏移位置。
举例说明,例如数据列表的完整数据集为sumData,则所述sumData包含了所述数据列表中所有列表项的数据。针对所述数据列表中每一个列表项的高度,无论是通过接口获取的动态数据还是已经准备好的静态数据,所述每个列表项的高度可以通过接口计算返回或者计算列表项元素标签的height属性得到。在获取所述第一位置参数时,包括getItemIndex(scrollTop)和getItemHeightAndMove(index)两种方法。由于所述getItemIndex方法是通过顺序查找的搜索方式来获取所述终端当前显示页面的第一位置参数的,因此,所述getItemIndex(scrollTop)方法用来获取某一偏移量对应的最近列表项的索引,其首先通过选择器获取得到下拉列表的列表项,再通过获取该列表项的scrollTop属性来得到scrollTop参数,所述scrollTop参数表征所述下拉列表的偏移量。具体地,通过从sumData的第一个列表项开始,遍历每个列表项并累加每个所述列表项的高度,直到累加值大于等于scrollTop或者到达sumData末尾为止,从而得出所述下拉列表的偏移量。此时获取遍历的每个列表项的索引下标作为函数返回值。所述getItemHeightAndMove(index)则是用来获取指定索引下标列表项的高度和偏移量,入参index为列表项的索引下标。具体地,通过从sumData的第一个列表项开始,遍历每个列表项并累加列表项的高度,直到遍历索引等于入参index为止,此时所获得的函数返回值包含两个属性值,其中偏移量值等于入参索引之前列表项高度的累加值,而高度值则通过getItemHeight(index)可获得。进一步地,对于数据列表中的每一个列表项高度不固定的情况,所述终端也可以通过上述方法对数据进行分页显示。
在一些实施例中,由于列表项为一个有序的数组,因此,在获取所述目标操作指令中包括的显示于所述终端当前显示页面中的第一页面数据对应的第一位置参数时,可以通过二分查找的方式来提高获取位置参数的效率。具体地,当scrollTop偏移量小于等于最后一次记录列表项的偏移量时(时间复杂度为O(logN)),由于缓存数组的每个偏移量构成一个有序数组,每次只需把中间位置的列表项的偏移量跟scrollTop进行对比,进行决定在上半部还是下半部进行搜索;当scrollTop偏移量大于最后一次记录列表项的偏移量时(时间复杂度为O(logd),d为缓存最后记录的下标与函数结果下标之间的差距),diff参数为每次下标的递增量,其值为2的N次幂,以1,2,4,8,16...的方式来进行指数级增长。举例说明,例如最后一次记录的下标为lastIndex,从lastIndex开始,每次在此基础上增加2的i-1次幂的下标序号(i初始值为1),以新的序号为入参,通过getItemHeightAndMove(index)方法获取得到新序号列表项对应的偏移量,然后与scrollTop进行比较,如果其值仍然小于scrollTop,则继续重复上述流程,直到其值大于scrollTop为止。这时,得到最终的大于scrollTop的列表项下标finalIndex,以finalIndex-1和finalIndex为临时数组的首尾,对scrollTop进行二分查找即能得到最终结果。这样一来,通过二分查找的方式可以提升获取位置参数的效率。
S200:将所述第一位置参数与预设的位置阈值进行比对,以确定所述终端是否执行页面数据加载操作。
在本实施例中,所述预设的位置阈值为判断所述终端是否需要执行页面数据加载操作的指标。在通过监听作用于所述终端界面的动作事件并获取得到所述终端当前显示页面中的第一页面数据对应的第一位置参数之后,将所述获取得到的第一位置参数与预设的位置阈值进行比对,判断所述第一位置参数是否超出预设的位置阈值,当判断出所述第一位置参数超出所述预设的位置阈值时,确定所述终端执行页面数据加载操作。所述预设的位置阈值可以设置为所述第一页面数据在所述终端界面中的滚动距离,然后依据所述第一位置参数计算得出所述第一页面数据当前状态在所述终端界面中的滚动距离之后,将该计算得到的滚动距离值与系统预先设定的滚动距离阈值进行比对,当计算得到的滚动距离值超出所述系统预先设定的滚动距离阈值时,确定所述终端执行页面数据加载操作。
在一些实施例中,请参阅图2,图2为本发明实施例提供的页面数据加载控制方法中确定是否执行页面数据加载操作的一种方法流程示意图。如图2所示,所述步骤S200还包括步骤S210至步骤S230。其中,S210:识别所述第一页面数据与所述终端界面之间的相对位置;S220:根据所述相对位置判断所述第一页面数据中预设的临界点位置是否位于所述终端界面中;S230:当确定所述第一页面数据中预设的临界点位置位于所述终端界面中时,触发所述终端执行页面数据加载操作。
在本实施例中,请一并参阅图3,图3为本发明实施例提供的页面数据加载控制方法中确定终端是否执行页面数据加载操作的页面状态示意图。如图3所示,针对显示于所述终端当前显示页面中的第一页面数据1000,将其分别相对于头部和尾部具有一定距离的位置设置为第一临界点位置1001和第二临界点位置1002,此处的一定距离设置为但不限于占所述第一页面数据1000总长度的15%。在从作用于终端界面2000的目标操作指令中获取得到第一位置参数之后,依据所述第一位置参数识别所述终端当前显示页面中的第一页面数据1000与所述终端界面2000之间的相对位置,例如,根据所述第一位置参数中的startInd参数或endInd参数计算所述第一页面数据1000在所述终端界面中的滚动距离等,以判断所述终端当前显示页面中的第一页面数据1000是否滚动到预设的位置阈值对应的临界点位置。进而依据所述相对位置判断所述第一页面数据1000预设的临界点位置是否位于所述终端界面2000中,当确定所述第一页面数据1000的临界点位置位于所述终端界面2000中时,触发所述终端执行页面数据加载操作。其中,如图3中的相对位置2所示,当确定所述页面数据1000的第一临界点位置1001位于所述终端界面2000中时,触发所述终端向前执行页面数据加载操作;如图3中的相对位置3所示,当确定所述第一页面数据1000的第二临界点位置1002位于所述终端界面2000中时,触发所述终端向后执行页面数据加载操作。
S300:当确定所述终端执行所述页面数据加载操作时,从预设的数组容器已缓存的页面数据中获取所述目标操作指令对应的第二页面数据与所述第一页面数据进行拼接,以将所述第二页面数据显示在所述终端当前显示页面中。
用户使用终端浏览的信息对应的数据通常以列表的方式显示于终端界面,系统针对所述终端界面预先设置有一个数组容器,所述数组容器用于缓存列表中的部分页面数据,所述数组容器中可存储的最大数据长度远小于列表中的总数据长度。在本实施例中,所述数组容器中始终存储有在所述终端当前显示页面显示的第一页面数据及其上一页和下一页对应的页面数据。在本实施例中,当通过将所述第一位置参数与系统预设的位置参数阈值进行比对,得出比对结果为确定执行所述页面数据加载操作时,根据所述用户在所述终端的界面上执行的滚动操作时的方向从预设的数组容器已缓存的页面数据中获取所述目标操作指令对应的第二页面数据与所述第一页面数据进行拼接,以将所述第二页面数据显示在所述终端当前显示页面中。进一步地,针对数据列表中的每一个列表项高度不固定的情况,存储在所述预设的数组容器中的数据长度可支持配置,对于分页获取的数据,当其长度比所述数组容器还小时,可以通过将获取数据的临界点设置为数据的长度,以避免列表拉到底时出现的底部空白情况。
上述实施例所述的页面数据加载控制方法在通过以网络请求的方式动态获取页面数据时,系统仅在所述终端当前显示页面中的第一页面数据滚动到预设的临界点位置时以Ajax形式请求所述数组容器长度的页面数据,由于所述数组容器中缓存的数据量十分有限,在用户视角看来整个页面滚动过程流畅,减少了用户等待加载的时间,避免了浏览器在加载数据时出现卡顿问题。
在一些实施例中,请参阅图4,图4为本发明实施例提供的页面数据加载控制方法中从预设的数组容器已缓存的页面数据中获取目标操作指令对应的第二页面数据与第一页面数据进行拼接的一种方法流程示意图。
如图4所示,所述步骤S300还包括步骤S310至步骤S330。其中,S310:识别所述目标操作指令对应的数据加载方向;S320:根据所述目标操作指令对应的数据加载方向从所述数组容器缓存的页面数据中获取待显示于所述终端当前显示页面的第二页面数据;S330:将所述第二页面数据与在所述终端当前显示页面中显示的第一页面数据进行拼接,以使所述终端对所述第二页面数据进行显示。
在本实施例中,预先设置所述目标操作指令对应的数据加载方向与所述数组容器中缓存的页面数据偏移量之间的映射关系,例如所述目标操作指令包括的向上滚动操作指令和向下滚动操作指令中,向上滚动方向与所述数组容器中缓存的当前显示页面上一页的页面数据进行映射,向下滚动方向与所述数组容器中缓存的当前显示页面下一页的页面数据进行映射。所以,当系统确定所述终端执行所述页面数据加载操作时,识别所述目标操作指令对应的数据加载方向,当所述用户在所述终端的界面上执行的滚动操作时目标操作指令对应的数据加载方向为向上时,从所述系统预设的数组容器已缓存的页面数据中获取所述终端当前显示页面上一页的页面数据作为待显示于所述终端当前显示页面的第二页面数据;而当所述用户在所述终端的界面上执行的滚动操作时目标操作指令对应的数据加载方向为向下时,从所述系统预设的数组容器已缓存的页面数据中获取所述终端当前显示页面下一页的页面数据作为待显示于所述终端当前显示页面的第二页面数据。获取得到待显示于所述终端当前显示页面的第二页面数据之后,将所述第二页面数据与在所述终端当前显示页面中显示的第一页面数据进行拼接,以使用户在对所述终端界面进行向上滚动操作时,所述终端可以对所述第二页面数据进行无缝显示。
在一些实施例中,请参阅图5,图5为本发明实施例提供的页面数据加载方法中对数组容器中缓存的页面数据进行更新处理的一种方法流程示意图。
如图5所示,所述步骤S300之后还包括步骤S400至步骤S500。其中,S400:监听所述终端当前显示页面中页面数据对应的第一位置参数的变化,以判断所述终端当前显示页面中的页面数据是否显示为第二页面数据;S500:当所述终端当前显示页面中的页面数据显示为第二页面数据时,按照所述目标操作指令对应的数据加载方向更新所述数组容器中缓存的页面数据。
在本实施例中,将待显示于所述终端当前显示页面的第二页面数据与在所述终端当前显示页面中显示的第一页面数据进行拼接之后,进一步监听所述终端当前显示页面中页面数据对应的第一位置参数的变化来获取所述终端当前显示页面的实时显示状态,以判断所述终端当前显示页面所显示的页面数据内容是否为第二页面数据中的数据内容,若是,则触发系统更新所述数组容器中缓存的页面数据。具体地,当所述终端当前显示页面所显示的页面数据内容为第二页面数据中的数据内容时,系统将原本显示于所述终端当前显示页面中的页面数据置于所述数组容器下一页的缓存位置处储存并将原本下一页的页面数据从所述数组容器中移除,而在所述数组容器中上一页的缓存位置处向上加载一页新的页面数据进行储存,以更新所述数组容器中缓存的页面数据,并保证所述数组容器中始终缓存着所述终端当前显示页面及其上一页和下一页的页面数据;当所述终端当前显示页面所显示的页面数据内容为第二页面数据中的数据内容时,系统将原本显示于所述终端当前显示页面的页面数据置于所述数组容器上一页的缓存位置处储存并将原本上一页的页面数据从所述数组容器中移除,而在所述数组容器中下一页的位置向下加载一页新的页面数据,以更新所述数组容器中缓存的页面数据,并保证所述数组容器中始终缓存着所述终端当前显示页面及其上一页和下一页的页面数据。
在一些实施例中,在对所述数组容器中缓存的页面数据进行更新处理时,还可以根据更新前所述数组容器内第一页面数据在完整数据集中对应位置参数的偏移量和高度进行定位,确定所述第一页面数据在所述完整数据集中的位置,然后从所述第一页面数据所处在所述完整数据集中的位置进行向上或向下加载数据,以实现对所述数组容器中缓存的页面数据的更新处理。例如,通过getItemHeightAndMove(index)来获取指定索引下标列表项的高度和偏移量,入参index为列表项的索引下标。具体地,获取所述第一页面数据在完整数据集sumData中偏移量对应的最近列表项的索引作为更新前最后一次记录的偏移量,该偏移量的下标为最后一次记录的下标lastIndex,那么,将所述终端当前显示页面中显示的数据内容对应的索引下标与lastIndex进行比较,当索引下标小于等于最后一次记录的下标时,直接加载所述完整数据集sumData中对应下标的数据来进行数据更新。当索引下标大于最后一次记录的下标时,从完整数据集sumData的lastIndex下标开始,遍历每个列表项并累加列表项的高度,直到遍历索引等于入参index为止来获取对应数据,以进行数据更新。由于指定下标列表项的高度可以通过getItemHeightAndMove方法获得,因此getItemIndex方法在获取列表项高度时也可通过getItemHeightAndMove方法来实现,上述方法可以充分利用缓存的优势,使得用户在浏览页面时过程顺畅,避免了浏览器在加载数据时出现卡顿问题。
上述实施例所述的页面数据加载控制方法通过使用分页的思想来对下拉列表数据结构进行优化,若向上滚动则对应加载上一页的数据,若向下滚动则对应加载下一页的数据,数据实体列表始终只具有一定的数据量,能避免浏览器卡顿现象的发生。针对动态获取数据的情况,把对庞大数据的一次网络情况转化为多次小数据的请求,在预设的数组容器中,不仅缓存有终端当前显示页面的页面数据内容,同时还缓存有所述终端当前显示页面对应的上一页和下一页的数据进行缓存,以使得终端在执行滚动操作获取上一页或下一页的页面数据时可直接从所述预设的数字容器已缓存的数据中直接提取调用,能够在很大程度上减少用户等待的时间,并降低白屏现象出现的概率。
为解决上述技术问题本发明实施例还提供一种页面数据加载控制装置。具体请参阅图6,图6为本发明实施例提供的页面数据加载控制装置基本结构框图。
如图6所示,一种页面数据加载控制装置,包括:接收模块10、处理模块20以及执行模块30。其中,所述接收模块10用于接收作用于终端界面的目标操作指令,所述目标操作指令中包括显示于所述终端当前显示页面中的页面数据对应的第一位置参数;所述处理模块20用于将所述第一位置参数与预设的位置阈值进行比对,以确定是否执行页面数据加载操作;所述执行模块30用于当确定执行所述页面数据加载操作时,从预设的数组容器已缓存的页面数据中获取所述目标操作指令对应的页面数据进行显示。
在一些实施例中,所述页面数据加载控制装置还包括:第一识别子模块、第一处理子模块以及第一执行子模块。其中,所述第一识别子模块用于识别所述终端当前显示页面中的页面数据与所述终端界面之间的相对位置;所述第一处理子模块用于根据所述相对位置判断所述页面数据中预设的临界点位置是否位于所述终端界面中;第一执行子模块用于当确定所述页面数据中预设的临界点位置位于所述终端界面中时,触发所述终端执行页面数据加载操作。
在一些实施例中,所述页面数据加载控制装置中,所述预设的数组容器缓存的页面数据中始终包括在所述终端当前显示页面显示的第一页面数据及其上一页和下一页对应的页面数据。
在一些实施例中,所述页面数据加载控制装置还包括:第二识别子模块、第二处理子模块以及第二执行子模块。其中,所述第二识别子模块用于识别所述目标操作指令对应的数据加载方向;所述第二处理子模块用于根据所述目标操作指令对应的数据加载方向从所述数组容器缓存的页面数据中获取待显示于所述终端当前显示页面的第二页面数据;所述第二执行子模块用于将所述第二页面数据与在所述终端当前显示页面中显示的第一页面数据进行拼接,以使所述终端对所述第二页面数据进行显示。
在一些实施例中,所述页面数据加载控制装置还包括:第一监听子模块和第三执行子模块。其中,所述第一监听子模块用于监听所述终端当前显示页面中页面数据对应的第一位置参数的变化,以判断所述终端当前显示页面中的页面数据是否显示为第二页面数据;所述第三执行子模块用于当所述终端当前显示页面中的页面数据显示为第二页面数据时,按照所述目标操作指令对应的数据加载方向更新所述数组容器中缓存的页面数据。
在一些实施例中,所述页面数据加载控制装置还包括:第一获取子模块。所述第一获取子模块用于通过二分查找的方式获取所述第一页面数据对应的第一页面参数。
上述实施例所述的页面数据加载控制装置通过使用分页的思想来对下拉列表数据结构进行优化,若向上滚动则对应加载上一页的数据,若向下滚动则对应加载下一页的数据,数据实体列表始终只具有一定的数据量,能避免浏览器卡顿现象的发生。针对动态获取数据的情况,把对庞大数据的一次网络情况转化为多次小数据的请求,在预设的数组容器中,不仅缓存有终端当前显示页面的页面数据内容,同时还缓存有所述终端当前显示页面对应的上一页和下一页的数据进行缓存,以使得终端在执行滚动操作获取上一页或下一页的页面数据时可直接从所述预设的数字容器已缓存的数据中直接提取调用,能够在很大程度上减少用户等待的时间,并降低白屏现象出现的概率。
为解决上述技术问题,本发明实施例还提供了一种计算机设备。具体请参阅图7,图7为本发明实施例提供的计算机设备基本结构框图。
如图7所示,计算机设备的内部结构示意图。如图7所示,该计算机设备包括通过系统总线连接的处理器、非易失性存储介质、存储器和网络接口。其中,该计算机设备的非易失性存储介质存储有操作系统、数据库和计算机可读指令,数据库中可存储有控件信息序列,该计算机可读指令被处理器执行时,可使得处理器实现一种页面数据加载控制方法。该计算机设备的处理器用于提供计算和控制能力,支撑整个计算机设备的运行。该计算机设备的存储器中可存储有计算机可读指令,该计算机可读指令被处理器执行时,可使得处理器执行一种页面数据加载控制方法。该计算机设备的网络接口用于与终端连接通信。本领域技术人员可以理解,图7中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在本实施例中,所述处理器用于执行图6中接收模块10、处理模块20和执行模块30的具体功能,而所述存储器存储有执行上述模块所需的程序代码和各类数据。所述网络接口用于向用户终端或服务器之间的数据传输。本实施例中的存储器存储有页面数据加载控制装置中执行所有子模块所需的程序代码及数据,服务器能够调用服务器的程序代码及数据执行所有子模块的功能。
上述实施例所述的计算机设备通过使用分页的思想来对下拉列表数据结构进行优化,若向上滚动则对应加载上一页的数据,若向下滚动则对应加载下一页的数据,数据实体列表始终只具有一定的数据量,能避免浏览器卡顿现象的发生。针对动态获取数据的情况,把对庞大数据的一次网络情况转化为多次小数据的请求,在预设的数组容器中,不仅缓存有终端当前显示页面的页面数据内容,同时还缓存有所述终端当前显示页面对应的上一页和下一页的数据进行缓存,以使得终端在执行滚动操作获取上一页或下一页的页面数据时可直接从所述预设的数字容器已缓存的数据中直接提取调用,能够在很大程度上减少用户等待的时间,并降低白屏现象出现的概率。
本发明还提供一种存储有计算机可读指令的存储介质,所述计算机可读指令被一个或多个处理器执行时,使得一个或多个处理器执行上述任一实施例所述页面数据加载控制方法的步骤。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,该计算机程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,前述的存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)等非易失性存储介质,或随机存储记忆体(Random Access Memory,RAM)等。
应该理解的是,虽然附图的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,其可以以其他的顺序执行。而且,附图的流程图中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,其执行顺序也不必然是依次进行,而是可以与其他步骤或者其他步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
以上所述仅是本发明的部分实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。
Claims (10)
1.一种页面数据加载控制方法,其特征在于,包括以下步骤:
接收作用于终端界面的目标操作指令,所述目标操作指令中包括显示于所述终端当前显示页面中的第一页面数据对应的第一位置参数;
将所述第一位置参数与预设的位置阈值进行比对,以确定所述终端是否执行页面数据加载操作;
当确定所述终端执行所述页面数据加载操作时,从预设的数组容器已缓存的页面数据中获取所述目标操作指令对应的第二页面数据与所述第一页面数据进行拼接,以将所述第二页面数据显示在所述终端当前显示页面中。
2.根据权利要求1所述的页面数据加载控制方法,其特征在于,所述将所述第一位置参数与所述终端的初始位置参数进行比对,以确定是否执行页面数据加载操作的步骤,包括:
识别所述第一页面数据与所述终端界面之间的相对位置;
根据所述相对位置判断所述第一页面数据中预设的临界点位置是否位于所述终端界面中;
当确定所述第一页面数据中预设的临界点位置位于所述终端界面中时,触发所述终端执行页面数据加载操作。
3.根据权利要求1所述的页面数据加载控制方法,其特征在于,所述预设的数组容器缓存的页面数据中始终包括在所述终端当前显示页面显示的第一页面数据及其上一页和下一页对应的页面数据。
4.根据权利要求3所述的页面数据加载控制方法,其特征在于,所述当确定所述终端执行所述页面数据加载操作时,从预设的数组容器已缓存的页面数据中获取所述目标操作指令对应的第二页面数据与所述第一页面数据进行拼接,以将所述第二页面数据显示在所述终端当前显示页面中的步骤,包括:
识别所述目标操作指令对应的数据加载方向;
根据所述目标操作指令对应的数据加载方向从所述数组容器缓存的页面数据中获取待显示于所述终端当前显示页面的第二页面数据;
将所述第二页面数据与在所述终端当前显示页面中显示的第一页面数据进行拼接,以使所述终端对所述第二页面数据进行显示。
5.根据权利要求4所述的页面数据加载控制方法,其特征在于,所述当确定所述终端执行所述页面数据加载操作时,从预设的数组容器已缓存的页面数据中获取所述目标操作指令对应的第二页面数据与所述第一页面数据进行拼接,以将所述第二页面数据显示在所述终端当前显示页面中的步骤之后,还可以包括:
监听所述终端当前显示页面中页面数据对应的第一位置参数的变化,以判断所述终端当前显示页面中的页面数据是否显示为第二页面数据;
当所述终端当前显示页面中的页面数据显示为第二页面数据时,按照所述目标操作指令对应的数据加载方向更新所述数组容器中缓存的页面数据。
6.根据权利要求1所述的页面数据加载控制方法,其特征在于,所述接收作用于终端界面的目标操作指令,所述目标操作指令中包括显示于所述终端当前显示页面中的第一页面数据对应的第一位置参数的步骤之前,还包括:
通过二分查找的方式获取所述第一页面数据对应的第一页面参数。
7.一种页面数据加载控制装置,其特征在于,包括:
接收模块,用于接收作用于终端界面的目标操作指令,所述目标操作指令中包括显示于所述终端当前显示页面中的第一页面数据对应的第一位置参数;
处理模块,用于将所述第一位置参数与预设的位置阈值进行比对,以确定所述终端是否执行页面数据加载操作;
执行模块,用于当确定所述终端执行所述页面数据加载操作时,从预设的数组容器已缓存的页面数据中获取所述目标操作指令对应的第二页面数据与所述第一页面数据进行拼接,以将所述第二页面数据显示在所述终端当前显示页面中。
8.根据权利要求7所述的页面数据加载控制装置,还包括:
第一识别子模块,用于识别所述第一页面数据与所述终端界面之间的相对位置;
第一处理子模块,用于根据所述相对位置判断所述第一页面数据中预设的临界点位置是否位于所述终端界面中;
第一执行子模块,用于当确定所述第一页面数据中预设的临界点位置位于所述终端界面中时,触发所述终端执行页面数据加载操作。
9.一种计算机设备,包括存储器和处理器,所述存储器中存储有计算机可读指令,所述计算机可读指令被所述处理器执行时,使得所述处理器执行上述权利要求1至6任意一项所述的页面数据加载控制方法。
10.一种存储有计算机可读指令的存储介质,所述计算机可读指令被一个或多个处理器执行时,使得一个或多个处理器执行上述权利要求1至6中任意一项权利要求所述的页面数据加载控制方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910441473.8A CN110457613A (zh) | 2019-05-24 | 2019-05-24 | 页面数据加载控制方法、装置、计算机设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910441473.8A CN110457613A (zh) | 2019-05-24 | 2019-05-24 | 页面数据加载控制方法、装置、计算机设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN110457613A true CN110457613A (zh) | 2019-11-15 |
Family
ID=68481004
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910441473.8A Pending CN110457613A (zh) | 2019-05-24 | 2019-05-24 | 页面数据加载控制方法、装置、计算机设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110457613A (zh) |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111580810A (zh) * | 2020-03-30 | 2020-08-25 | 深圳市麦谷科技有限公司 | 一种实现主动分页的方法、装置、移动终端及存储介质 |
CN111597488A (zh) * | 2020-05-06 | 2020-08-28 | 五八有限公司 | 页面加载方法、装置、电子设备及存储介质 |
CN112000904A (zh) * | 2020-08-25 | 2020-11-27 | 杭州迪普科技股份有限公司 | 页面呈现方法及其系统 |
CN112464121A (zh) * | 2020-11-27 | 2021-03-09 | 金蝶软件(中国)有限公司 | 数据加载方法、装置、计算机设备和存储介质 |
CN112733053A (zh) * | 2020-12-31 | 2021-04-30 | 北京字节跳动网络技术有限公司 | 页面检测方法、装置、电子设备和计算机可读介质 |
CN113485778A (zh) * | 2021-06-25 | 2021-10-08 | 青岛海尔科技有限公司 | 页面数据的处理方法、装置、存储介质和电子装置 |
CN114021050A (zh) * | 2022-01-04 | 2022-02-08 | 太平金融科技服务(上海)有限公司深圳分公司 | 数据处理方法、装置、计算机设备和存储介质 |
CN114489551A (zh) * | 2022-02-09 | 2022-05-13 | 广东乐心医疗电子股份有限公司 | 数据显示方法、装置及电子设备 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20120042279A1 (en) * | 2010-08-12 | 2012-02-16 | Salesforce.Com, Inc. | Accessing multi-page data |
CN107273031A (zh) * | 2017-06-23 | 2017-10-20 | 广州神马移动信息科技有限公司 | 信息流页面加载方法及装置 |
CN107451253A (zh) * | 2017-07-31 | 2017-12-08 | 北京京东尚科信息技术有限公司 | 数据处理方法及装置 |
CN108228044A (zh) * | 2016-12-15 | 2018-06-29 | 北大方正集团有限公司 | 电子书阅读翻页的方法、系统及终端 |
-
2019
- 2019-05-24 CN CN201910441473.8A patent/CN110457613A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20120042279A1 (en) * | 2010-08-12 | 2012-02-16 | Salesforce.Com, Inc. | Accessing multi-page data |
CN108228044A (zh) * | 2016-12-15 | 2018-06-29 | 北大方正集团有限公司 | 电子书阅读翻页的方法、系统及终端 |
CN107273031A (zh) * | 2017-06-23 | 2017-10-20 | 广州神马移动信息科技有限公司 | 信息流页面加载方法及装置 |
CN107451253A (zh) * | 2017-07-31 | 2017-12-08 | 北京京东尚科信息技术有限公司 | 数据处理方法及装置 |
Cited By (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111580810A (zh) * | 2020-03-30 | 2020-08-25 | 深圳市麦谷科技有限公司 | 一种实现主动分页的方法、装置、移动终端及存储介质 |
CN111597488A (zh) * | 2020-05-06 | 2020-08-28 | 五八有限公司 | 页面加载方法、装置、电子设备及存储介质 |
CN112000904A (zh) * | 2020-08-25 | 2020-11-27 | 杭州迪普科技股份有限公司 | 页面呈现方法及其系统 |
CN112464121A (zh) * | 2020-11-27 | 2021-03-09 | 金蝶软件(中国)有限公司 | 数据加载方法、装置、计算机设备和存储介质 |
CN112733053A (zh) * | 2020-12-31 | 2021-04-30 | 北京字节跳动网络技术有限公司 | 页面检测方法、装置、电子设备和计算机可读介质 |
CN112733053B (zh) * | 2020-12-31 | 2023-06-27 | 抖音视界有限公司 | 页面检测方法、装置、电子设备和计算机可读介质 |
CN113485778A (zh) * | 2021-06-25 | 2021-10-08 | 青岛海尔科技有限公司 | 页面数据的处理方法、装置、存储介质和电子装置 |
CN113485778B (zh) * | 2021-06-25 | 2023-06-13 | 青岛海尔科技有限公司 | 页面数据的处理方法、装置、存储介质和电子装置 |
CN114021050A (zh) * | 2022-01-04 | 2022-02-08 | 太平金融科技服务(上海)有限公司深圳分公司 | 数据处理方法、装置、计算机设备和存储介质 |
CN114021050B (zh) * | 2022-01-04 | 2022-03-29 | 太平金融科技服务(上海)有限公司深圳分公司 | 数据处理方法、装置、计算机设备和存储介质 |
CN114489551A (zh) * | 2022-02-09 | 2022-05-13 | 广东乐心医疗电子股份有限公司 | 数据显示方法、装置及电子设备 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110457613A (zh) | 页面数据加载控制方法、装置、计算机设备及存储介质 | |
CN109032457B (zh) | 页面显示方法、装置、终端和存储介质 | |
JP5611059B2 (ja) | ウェブベースのマルチユーザコラボレーション | |
US20130019159A1 (en) | Mobile web browser for pre-loading web pages | |
CN104077387B (zh) | 一种网页内容显示方法和浏览器装置 | |
US20120110435A1 (en) | Updating the display of a page with predictively downloaded content | |
US20030085924A1 (en) | Method and system for displaying categorized information on a user interface | |
US20150347615A1 (en) | Active Web Page Consolidator and Internet History Management System | |
CN102542009B (zh) | 数据查询方法及装置 | |
US11157576B2 (en) | Method, system and terminal for performing search in a browser | |
CN104603777A (zh) | 搜索结果中的外部动作建议 | |
KR100473670B1 (ko) | 웹 페이지 렌더링 방법 및 이를 구현하는 클라이언트 컴퓨터 | |
CN107329976B (zh) | 网页分页方法、装置、计算机设备及计算机可读存储介质 | |
CN107402938A (zh) | 页面展示方法、装置和客户端设备 | |
CN107818101A (zh) | 页面跳转的方法及其装置 | |
US20080059428A1 (en) | Automatic completion with LDAP | |
US20230409398A1 (en) | Resource pre-fetch using age threshold | |
CN111723309B (zh) | 用于网页搜索的方法和装置 | |
WO2018046716A1 (en) | Web access enhancement | |
CN111273964B (zh) | 一种数据加载方法及装置 | |
CN110019393A (zh) | 一种模糊查询的方法和装置 | |
JP2000311108A (ja) | ホームページのロード方式及びその方法 | |
KR101132220B1 (ko) | 캐쉬(cache)를 이용하여 웹 페이지를 제공하기 위한 방법, 시스템 및 컴퓨터 판독 가능한 기록 매체 | |
US20160299985A1 (en) | Method for accessing last search | |
CN102754099B (zh) | 管理导航历史 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |