CN111736933A - 弹窗展示方法、装置及可读存储介质 - Google Patents
弹窗展示方法、装置及可读存储介质 Download PDFInfo
- Publication number
- CN111736933A CN111736933A CN202010378789.XA CN202010378789A CN111736933A CN 111736933 A CN111736933 A CN 111736933A CN 202010378789 A CN202010378789 A CN 202010378789A CN 111736933 A CN111736933 A CN 111736933A
- Authority
- CN
- China
- Prior art keywords
- popup
- rendering data
- data
- window
- server
- 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
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/451—Execution arrangements for user interfaces
Abstract
本发明实施例提供了一种弹窗展示方法、装置及可读存储介质。本发明弹窗展示方法,包括:向服务器请求第一弹窗的渲染数据,其中,通过调用弹窗方法,以创建第一对象,并通过第一对象执行异步函数,通过异步函数向服务器请求第一弹窗的渲染数据,在接收到服务器发送的第一弹窗的渲染数据的情况下,将渲染数据存储在数据队列的末尾,数据队列的头部开始,取出一个渲染数据,并展示取出的渲染数据对应的弹窗。从而可以保证一次只展示一个数据队列中的各渲染数据对应的弹窗中优先级最高的弹窗,解决现有技术中采用异步方式实现弹窗展示的方案时,导致各个弹窗不能按照优先级高低的顺序进行显示的问题。
Description
技术领域
本发明涉及通信领域,特别是涉及一种弹窗展示方法、装置及可读存储介质。
背景技术
随着互联网业务的发展,用户打开某个页面后,会弹出多个弹窗,多个弹窗例如包括在某个网站的各个页面都会展示的全局弹窗、以及针对在该网站的某个页面弹出的页面级弹窗,同时,基于不同产品和运行的需求,弹窗中一般会展示一些广告内容,或者网站或应用程序的推荐内容等。为了满足业务个性化需求,需要将各个弹窗按照顺序依次展示,也即在打开页面后进行第一次展示弹窗时,一次只展示一个弹窗,并且当前展示的弹窗在所有弹窗中为优先级最高的弹窗,用户如果关闭该弹窗,则接着展示次优先级高的弹窗。
然而,由于现有技术中大多采用异步方式展示弹窗,但是对于异步方式,如果浏览器先收到了低优先级弹窗的渲染数据,会先展示低优先级的弹窗,或者,同时收到了低优先级弹窗的渲染数据和高优先级弹窗的渲染数据,则会导致低优先级弹窗和高优先级弹窗同时展示,并且一个弹窗被压在另一个弹窗的下面,从而无法保证弹窗按照优先级的顺序进行展示。
发明内容
本发明实施例提供一种弹窗展示方法、装置及可读存储介质,以解决采用异步方式实现弹窗展示的方案时,导致各个弹窗不能按照优先级高低的顺序进行显示的问题。
本发明实施例的第一方面,提供了一种弹窗展示方法,执行于浏览器,包括:
向服务器请求第一弹窗的渲染数据,其中,通过调用弹窗方法,以创建第一对象,并通过所述第一对象执行异步函数,其中,通过所述异步函数向服务器请求所述第一弹窗的渲染数据,所述第一弹窗为当前未被请求的所有弹窗中最高优先级的弹窗;
在接收到所述服务器发送的所述第一弹窗的渲染数据的情况下,将所述渲染数据存储在数据队列的末尾;
所述数据队列的头部开始,取出一个渲染数据,并展示取出的渲染数据对应的弹窗。
本发明实施例的第二方面,提供了一种弹窗展示装置,设置于浏览器,包括:
请求模块,用于向服务器请求第一弹窗的渲染数据,其中,通过调用弹窗方法,以创建第一对象,并通过所述第一对象执行异步函数,其中,通过所述异步函数向服务器请求所述第一弹窗的渲染数据,所述第一弹窗为当前未被请求的所有弹窗中最高优先级的弹窗;
第一存储模块,用于在接收到所述服务器发送的所述第一弹窗的渲染数据的情况下,将所述渲染数据存储在数据队列的末尾;
展示模块,用于所述数据队列的头部开始,取出一个渲染数据,并展示取出的渲染数据对应的弹窗。
本发明实施例的第三方面,提供了一种计算机可读存储介质,所述计算机可读存储介质上存储计算机程序,所述计算机程序被处理器执行时实现上述所述的弹窗展示方法的步骤。
本发明的第四方面,提供了一种弹窗展示装置,包括处理器、存储器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述计算机程序被所述处理器执行时实现上述所述的弹窗展示方法的步骤。
针对在先技术,本发明具备如下优点:
本发明实施例提供的弹窗展示方法,通过向服务器请求第一弹窗的渲染数据,其中,通过调用弹窗方法,以创建第一对象,并通过第一对象执行异步函数,通过异步函数向所述服务器请求所述第一弹窗的渲染数据,第一弹窗为当前未被请求的所有弹窗中最高优先级的弹窗,在接收到服务器发送的第一弹窗的渲染数据的情况下,将渲染数据存储在数据队列的末尾,数据队列的头部开始,取出一个渲染数据,并展示取出的渲染数据对应的弹窗。由于通过异步函数,可以向服务器请求当前未被请求的所有弹窗中最高优先级的弹窗的渲染数据,并将请求到的渲染数据存入到数据队列的末尾,并且从数据队列的头部开始,只取数据队列中的一个渲染数据,也即只取数据队列中最前面的渲染数据,并展示该渲染数据对应的弹窗,并且,排在数据队列中的最前面的渲染数据对应的弹窗是数据队列中的各渲染数据对应的弹窗中优先级最高的弹窗,从而可以保证一次只展示一个数据队列中的各渲染数据对应的弹窗中优先级最高的弹窗,解决现有技术中采用异步方式实现弹窗导致的各个弹窗不能按照优先级高低的顺序进行显示的问题。
上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式。
附图说明
通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本发明的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:
图1为本发明实施例提供的一种弹窗展示方法的步骤流程图;
图2为本发明实施例提供的另一种弹窗展示方法的步骤流程图;
图3为本发明实施例提供的一种弹窗展示装置的结构示意图。
具体实施方式
为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本发明作进一步详细的说明。
应当理解,此处所描述的具体实施例仅用以解释本发明,仅仅是本发明一部分实施例,而不是全部的实施例,并不用于限定本发明。
参照图1,图1为本发明实施例提供的一种弹窗展示方法的步骤流程图,本实施例的弹窗展示方法适用于解决现有技术中异步弹窗展示方案无法保证各个弹窗按照弹窗的优先级高低的顺序进行展示的情况。该方法可以有浏览器执行,本实施例的方法包括如下步骤:
步骤101、向服务器请求第一弹窗的渲染数据,其中,通过调用弹窗方法,以创建第一对象,并通过第一对象执行异步函数,通过异步函数向服务器请求第一弹窗的渲染数据,第一弹窗为当前未被请求的所有弹窗中最高优先级的弹窗。
例如针对某个页面,共设置有3个弹窗,优先级从高到低依次为弹窗1、弹窗2和弹窗3,在用户打开该页面时,则浏览器第一次通过调用弹窗方法,创建第一对象1,当前未被请求的所有弹窗即包括弹窗1、弹窗2和弹窗3,并通过第一对象1执行异步函数,由于弹窗1的优先级最高,也即弹窗1为当前未被请求的所有弹窗中最高优先级的弹窗,则可以通过执行异步函数请求弹窗1的渲染数据1。渲染数据可以包括弹窗的图片数据、文字等内容。
向服务器请求到渲染数据1后,可以请求弹窗2的渲染数据2(由于当前未被请求的所有弹窗包括弹窗2和弹窗3,弹窗2为弹窗2和弹窗3中的最高优先级)。浏览器请求到弹窗2的渲染数据2后,可以接着请求弹窗3的渲染数据,由于请求渲染数据1和渲染数据2后,当前未被请求的所有弹窗只包括弹窗3,因此最后请求的为弹窗3的渲染数据3。也即向服务器请求的第一弹窗包括弹窗1、弹窗2和弹窗3,向服务器请求的第一弹窗的渲染数据包括渲染数据1、渲染数据2和渲染数据3。
步骤102、在接收到服务器发送的第一弹窗的渲染数据的情况下,将渲染数据存储在数据队列的末尾。
例如,结合步骤101中的举例说明,服务器可以向浏览器发送弹窗1的渲染数据1,浏览器接收到渲染数据1后,将渲染数据1存储在数据队列的末尾。需要说明的是,在第一次将渲染数据存储在数据队列的末尾时,由于数据队列中的数据为空,也即第一次存储在数据队列中的渲染数据排在数据队列的头部,即位于数据队列中的第一位。如果后续再请求到例如弹窗2的渲染数据2时,如果此时渲染数据1未被删除,则渲染数据2排在数据队列的第二位,即渲染数据2位于渲染数据1之后。如果再请求到弹窗3的渲染数据3,如果此时渲染数据1和渲染数据2未被删除,则渲染数据3位于渲染数据2之后。
需要说明的是,例如将渲染数据1存储在数据队列的末尾,同时可以将第一对象1的状态更新为已完成。将渲染数据2存储在数据队列的末尾,同时可以将第一对象2的状态更新为已完成,第一对象2为通过调用弹窗方法,创建的第一对象2。
步骤103、从数据队列的头部开始,取出一个渲染数据,并展示取出的渲染数据对应的弹窗。
例如,当前数据队列中从头部开始,依次为渲染数据1、渲染数据2和渲染数据3,则取出渲染数据1,并展示渲染数据1对应的弹窗。
本实施例提供的弹窗展示方法,通过向服务器请求第一弹窗的渲染数据,其中,通过调用弹窗方法,以创建第一对象,并通过第一对象执行异步函数,通过异步函数向服务器请求第一弹窗的渲染数据,第一弹窗为当前未被请求的所有弹窗中最高优先级的弹窗,在接收到服务器发送的第一弹窗的渲染数据的情况下,将渲染数据存储在数据队列的末尾,数据队列的头部开始,取出一个渲染数据,并展示取出的渲染数据对应的弹窗。由于通过异步函数,可以向服务器请求当前未被请求的所有弹窗中最高优先级的弹窗的渲染数据,并将请求到的渲染数据存入到数据队列的末尾,并且从数据队列的头部开始,只取数据队列中的一个渲染数据,也即只取数据队列中最前面的渲染数据,并展示该渲染数据对应的弹窗,并且,排在数据队列中的最前面的渲染数据对应的弹窗是数据队列中的各渲染数据对应的弹窗中优先级最高的弹窗,从而可以保证一次只展示一个数据队列中的各渲染数据对应的弹窗中优先级最高的弹窗,解决现有技术中采用异步方式实现弹窗导致的各个弹窗不能按照优先级高低的顺序进行显示的问题。
参照图2,图2为本发明实施例提供的另一种弹窗展示方法的步骤流程图,该方法包括如下步骤:
步骤201、向服务器请求第一弹窗的渲染数据,其中,通过调用弹窗方法,以创建第一对象,并通过第一对象执行异步函数,通过异步函数向服务器请求第一弹窗的渲染数据,第一弹窗为当前未被请求的所有弹窗中最高优先级的弹窗。
第一对象可以为Promise对象,Promise对象是异步编程中的一种解决方案,关于Promise对象的用法可以参照现有技术。
步骤202、在接收到服务器发送的第一弹窗的渲染数据的情况下,将渲染数据存储在数据队列的末尾。
其中,在未接收到服务器发送的第一弹窗的渲染数据的情况下,更新第一对象的状态为已完成,或者,
在接收到服务器发送的第一弹窗的渲染数据的情况下,更新述第一对象的状态为已完成。
需要说明的是,Promise对象的状态不受外界影响。即Promise对象代表一个异步操作,本实施例中的Promise对象的状态有两种:进行中和已完成。只有异步操作的结果,可以决定当前是哪一种状态,任何其他操作都无法改变这个状态。例如,创建第一对象(Promise对象)时,第一对象的状态为进行中,其他任何操作都不能改变这个进行中的状态。只有在未接收到服务器发送的第一弹窗的渲染数据的情况下,或者在接收到服务器发送的第一弹窗的渲染数据的情况下,才可以采用Resolve方法将第一对象的状态更新为已完成。本实施例中不论通过步骤201是否能够获取到第一弹窗的渲染数据,都更新述第一对象的状态为已完成,从而不影响执行步骤204,也即不影响获取比第一弹窗低一个级别的弹窗的渲染数据,从而可以提高获取弹窗的渲染数据的效率。
步骤203、数据队列的头部开始,取出一个渲染数据,并展示取出的渲染数据对应的弹窗。
需要说明的是,在展示取出的渲染数据对应的弹窗之后,还可以包括如下步骤:
接收用户对展示的弹窗的关闭操作对应的请求信息;
响应于请求信息,删除数据队列中与展示的弹窗对应的渲染数据。
其中,例如数据队列中从头部开始,依次有三个弹窗的渲染数据(渲染数据1、渲染数据2、渲染数据3)。如果通过步骤203展示渲染数据1对应的弹窗1后,用户关闭弹窗1,也即浏览器接收用户对展示的弹窗1的关闭操作对应的请求信息,并响应于请求信息,删除数据队列中的渲染数据1,则此时数据队列中的渲染数据为(渲染数据2、渲染数据3),浏览器则可以取出渲染数据2,并展示弹窗2。从而可以保证在数据队列中各渲染数据对应的弹窗中优先级最高的弹窗的渲染数据被删除后,接下来展示的弹窗仍然是当前的数据队列中各渲染数据对应的弹窗中优先级最高的弹窗,保证弹窗的展示顺序是可控的,即先展示优先级高的弹窗,在优先级高的弹窗被关闭的情况下,接下来展示优先级比上一个弹窗低一个级别的弹窗。
需要说明的是,如果用户未关闭弹窗1,则仍然展示弹窗1。
步骤204、在第一对象的状态为已完成的情况下,根据预设弹窗个数和已请求到的弹窗数据的个数,判断是否需要请求第二弹窗的渲染数据,其中,第二弹窗的优先级比第一弹窗的优先级低一级。
步骤205、在需要请求第二弹窗的渲染数据的情况下,通过调用弹窗方法,以创建第二对象,并通过第二对象执行异步函数,其中,异步函数用于向服务器请求第二弹窗的渲染数据。
在不需要请求第二弹窗的渲染数据的情况下,则直接结束。
步骤206、在接收到服务器发送的第二弹窗的渲染数据的情况下,将第二弹窗的渲染数据存储在数据队列的末尾。
其中,结合上述实施例中的举例说明,针对步骤204至步骤206进行介绍。例如预设弹窗个数为3,如果已请求到的弹窗数据的个数为1,则可以确定需要请求第二弹窗的渲染数据。如果已请求到的弹窗数据的个数为3,则不需要请求第二弹窗的渲染数据。即已请求到的弹窗数据的个数小于预设弹窗个数的情况下,可以确定需要请求第二弹窗的渲染数据,在已请求到的弹窗数据的个数等于预设弹窗个数的情况下,不需要请求第二弹窗的渲染数据。
其中,需要说明的是,仍结合上述实施例中的举例进行说明,如果在步骤101中请求的为弹窗1的渲染数据,由于弹窗2的优先级比弹窗1的优先级低一级,则在第一对象的状态为已完成的情况下,通过调用弹窗方法,以创建第二对象2,并通过第二对象2执行异步函数,其中,异步函数用于向服务器请求弹窗2的渲染数据2,并将渲染数据2存储在渲染数据1之后且与渲染数据1相邻,从而实现各个弹窗的渲染数据是按照优先级从高到低的顺序,依次存放在数据队列中,也即保证数据队列中的第一个渲染数据为所有渲染数据中优先级最高的弹窗对应的渲染数据。
需要说明的是,调用弹窗方法可以在第一对象的then函数中执行调用弹窗方法。如果在执行步骤204至206后,在第二对象的状态为已完成的情况下,仍然可以执行根据预设弹窗个数和已请求到的弹窗数据的个数,判断是否需要请求第二弹窗的渲染数据的步骤,该第二弹窗的优先级比上次通过步骤204至步骤206中的第二弹窗的优先级低一级。
本实施例提供的弹窗展示方法,通过从数据队列的头部开始,只取数据队列中的一个渲染数据,也即只取数据队列中最前面的渲染数据,并展示该渲染数据对应的弹窗,并且,排在数据队列中的最前面的渲染数据对应的弹窗是数据队列中的各渲染数据对应的弹窗中优先级最高的弹窗,从而可以保证一次只展示一个数据队列中的各渲染数据对应的弹窗中优先级最高的弹窗,解决现有技术中采用异步方式实现弹窗导致的各个弹窗不能按照优先级高低的顺序进行显示的问题,实现各个弹窗按照优先级高低的顺序进行展示,并且,在高优先级的弹窗未被关闭的情况下,不会展示低优先级的弹窗,只有在高优先级的弹窗被关闭后,才会展示比高优先级的弹窗低一个级别的弹窗。
参照图3,图3为本发明实施例提供的另一种弹窗展示方法的步骤流程图,该装置300包括如下模块:
请求模块310,用于向服务器请求第一弹窗的渲染数据,其中,通过调用弹窗方法,以创建第一对象,并通过所述第一对象执行异步函数,通过所述异步函数向所述服务器请求所述第一弹窗的渲染数据,所述第一弹窗为当前未被请求的所有弹窗中最高优先级的弹窗;
第一存储模块320,用于在接收到所述服务器发送的所述第一弹窗的渲染数据的情况下,将所述渲染数据存储在数据队列的末尾;
展示模块330,用于所述数据队列的头部开始,取出一个渲染数据,并展示取出的渲染数据对应的弹窗。
本市实施例提供的弹窗展示装置,通过向服务器请求第一弹窗的渲染数据,其中,通过调用弹窗方法,以创建第一对象,并通过第一对象执行异步函数,通过异步函数向服务器请求第一弹窗的渲染数据,第一弹窗为当前未被请求的所有弹窗中最高优先级的弹窗,在接收到所述服务器发送的所述第一弹窗的渲染数据的情况下,将所述渲染数据存储在数据队列的末尾,所述数据队列的头部开始,取出一个渲染数据,并展示取出的渲染数据对应的弹窗。由于通过异步函数,可以向服务器请求当前未被请求的所有弹窗中最高优先级的弹窗的渲染数据,并将请求到的渲染数据存入到数据队列的末尾,并且从数据队列的头部开始,只取数据队列中的一个渲染数据,也即只取数据队列中最前面的渲染数据,并展示该渲染数据对应的弹窗,并且,排在数据队列中的最前面的渲染数据对应的弹窗是数据队列中的各渲染数据对应的弹窗中优先级最高的弹窗,从而可以保证一次只展示一个数据队列中的各渲染数据对应的弹窗中优先级最高的弹窗,解决现有技术中采用异步方式实现弹窗导致的各个弹窗不能按照优先级高低的顺序进行显示的问题。
可选的,还可以包括:
判断模块,用于在所述第一对象的状态为已完成的情况下,根据预设弹窗个数和已请求到的弹窗数据的个数,判断是否需要请求第二弹窗的渲染数据,其中,所述第二弹窗的优先级比所述第一弹窗的优先级低一级;
第二调用模块,用于在需要请求所述第二弹窗的渲染数据的情况下,通过调用所述弹窗方法,以创建第二对象,并通过所述第二对象执行异步函数,其中,所述异步函数用于向服务器请求第二弹窗的渲染数据;
第二存储模块,用于在接收到所述服务器发送的所述第二弹窗的渲染数据的情况下,将所述第二弹窗的渲染数据存储在所述数据队列的末尾。
可选的,还可以包括:
更新模块,用于在未接收到所述服务器发送的所述第一弹窗的渲染数据的情况下,更新所述第一对象的状态为已完成,或者,
在接收到所述服务器发送的所述第一弹窗的渲染数据的情况下,更新述第一对象的状态为已完成。
可选的,还可以包括:
接收模块,用于接收用户对展示的弹窗的关闭操作对应的请求信息;
删除模块,用于响应于所述请求信息,删除所述数据队列中与所述展示的弹窗对应的渲染数据。
另外,本发明实施例还提供一种弹窗展示装置,该弹窗展示装置包括处理器,存储器以及存储在存储器上并可在处理器上运行的计算机程序,该计算机程序被处理器执行时实现上述实施例的弹窗展示方法实施例的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。
本发明实施例还提供一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,该计算机程序被处理器执行时实现上述的弹窗展示方法实施例的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。其中,的计算机可读存储介质,可以为只读存储器(Read-Only Memory,简称ROM)、随机存取存储器(Random Access Memory,简称RAM)、磁碟或者光盘等。
本发明实施例还提供了一种计算机程序,该计算机程序可以存储在云端或本地的存储介质上。在该计算机程序被计算机或处理器运行时用于执行本发明实施例的弹窗展示方法的相应步骤,并且用于实现根据本发明实施例的弹窗展示装置中的相应模块。
本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。
本领域技术人员易于想到的是:上述各个实施例的任意组合应用都是可行的,故上述各个实施例之间的任意组合都是本发明的实施方案,但是由于篇幅限制,本说明书在此就不一一详述了。
在此提供的弹窗展示方法不与任何特定计算机、虚拟系统或者其它设备固有相关。各种通用系统也可以与基于在此的示教一起使用。根据上面的描述,构造具有本发明方案的系统所要求的结构是显而易见的。此外,本发明也不针对任何特定编程语言。应当明白,可以利用各种编程语言实现在此描述的本发明的内容,并且上面对特定语言所做的描述是为了披露本发明的最佳实施方式。
在此处所提供的说明书中,说明了大量具体细节。然而,能够理解,本发明的实施例可以在没有这些具体细节的情况下实践。在一些实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。
类似地,应当理解,为了精简本发明并帮助理解各个发明方面中的一个或多个,在上面对本发明的示例性实施例的描述中,本发明的各个特征有时被一起分组到单个实施例、图、或者对其的描述中。然而,并不应将该公开的方法解释成反映如下意图:即所要求保护的本发明要求比在每个权利要求中所明确记载的特征更多的特征。更确切地说,如权利要求书所反映的那样,发明方面在于少于前面公开的单个实施例的所有特征。因此,遵循具体实施方式的权利要求书由此明确地并入该具体实施方式,其中每个权利要求本身都作为本发明的单独实施例。
本领域那些技术人员可以理解,可以对实施例中的设备中的模块进行自适应性地改变并且把它们设置在与该实施例不同的一个或多个设备中。可以把实施例中的模块或单元或组件组合成一个模块或单元或组件,以及此外可以把它们分成多个子模块或子单元或子组件。除了这样的特征和/或过程或者单元中的至少一些是相互排斥之外,可以采用任何组合对本说明书(包括伴随的权利要求、摘要和附图)中公开的所有特征以及如此公开的任何方法或者设备的所有过程或单元进行组合。除非另外明确陈述,本说明书(包括伴随的权利要求、摘要和附图)中公开的每个特征可以由提供相同、等同或相似目的的替代特征来代替。
此外,本领域的技术人员能够理解,尽管在此所述的一些实施例包括其它实施例中所包括的某些特征而不是其它特征,但是不同实施例的特征的组合意味着处于本发明的范围之内并且形成不同的实施例。例如,在权利要求书中,所要求保护的实施例的任意之一都可以以任意的组合方式来使用。
本发明的各个部件实施例可以以硬件实现,或者以在一个或者多个处理器上运行的软件模块实现,或者以它们的组合实现。本领域的技术人员应当理解,可以在实践中使用微处理器或者数字信号处理器(DSP)来实现根据本发明实施例的弹窗展示方法中的一些或者全部部件的一些或者全部功能。本发明还可以实现为用于执行这里所描述的方法的一部分或者全部的设备或者装置程序(例如,计算机程序和计算机程序产品)。这样的实现本发明的程序可以存储在计算机可读介质上,或者可以具有一个或者多个信号的形式。这样的信号可以从因特网网站上下载得到,或者在载体信号上提供,或者以任何其他形式提供。
应该注意的是上述实施例对本发明进行说明而不是对本发明进行限制,并且本领域技术人员在不脱离所附权利要求的范围的情况下可设计出替换实施例。在权利要求中,不应将位于括号之间的任何参考符号构造成对权利要求的限制。单词“包含”不排除存在未列在权利要求中的元件或步骤。位于元件之前的单词“一”或“一个”不排除存在多个这样的元件。本发明可以借助于包括有若干不同元件的硬件以及借助于适当编程的计算机来实现。在列举了若干装置的单元权利要求中,这些装置中的若干个可以是通过同一个硬件项来具体体现。单词第一、第二、以及第三等的使用不表示任何顺序。可将这些单词解释为名称。
Claims (10)
1.一种弹窗展示方法,其特征在于,执行于浏览器,包括:
向服务器请求第一弹窗的渲染数据,其中,通过调用弹窗方法,以创建第一对象,并通过所述第一对象执行异步函数,通过所述异步函数向所述服务器请求所述第一弹窗的渲染数据,所述第一弹窗为当前未被请求的所有弹窗中最高优先级的弹窗;
在接收到所述服务器发送的所述第一弹窗的渲染数据的情况下,将所述渲染数据存储在数据队列的末尾;
所述数据队列的头部开始,取出一个渲染数据,并展示取出的渲染数据对应的弹窗。
2.根据权利要求1所述的方法,其特征在于,还包括:
在所述第一对象的状态为已完成的情况下,根据预设弹窗个数和已请求到的弹窗数据的个数,判断是否需要请求第二弹窗的渲染数据,其中,所述第二弹窗的优先级比所述第一弹窗的优先级低一级;
在需要请求所述第二弹窗的渲染数据的情况下,通过调用所述弹窗方法,以创建第二对象,并通过所述第二对象执行异步函数,其中,所述异步函数用于向服务器请求第二弹窗的渲染数据;
在接收到所述服务器发送的所述第二弹窗的渲染数据的情况下,将所述第二弹窗的渲染数据存储在所述数据队列的末尾。
3.根据权利要求1或2所述的方法,其特征在于,还包括:
在未接收到所述服务器发送的所述第一弹窗的渲染数据的情况下,更新所述第一对象的状态为已完成,或者,
在接收到所述服务器发送的所述第一弹窗的渲染数据的情况下,更新述第一对象的状态为已完成。
4.根据权利要求1或2所述的方法,其特征在于,在所述展示取出的渲染数据对应的弹窗之后,还包括:
接收用户对展示的弹窗的关闭操作对应的请求信息;
响应于所述请求信息,删除所述数据队列中与所述展示的弹窗对应的渲染数据。
5.一种弹窗展示装置,其特征在于,设置于浏览器,包括:
请求模块,用于向服务器请求第一弹窗的渲染数据,其中,通过调用弹窗方法,以创建第一对象,并通过所述第一对象执行异步函数,其中,通过所述异步函数向所述服务器请求第一弹窗的渲染数据,所述第一弹窗为当前未被请求的所有弹窗中最高优先级的弹窗;
第一存储模块,用于在接收到所述服务器发送的所述第一弹窗的渲染数据的情况下,将所述渲染数据存储在数据队列的末尾;
展示模块,用于所述数据队列的头部开始,取出一个渲染数据,并展示取出的渲染数据对应的弹窗。
6.根据权利要求5所述的装置,其特征在于,还包括:
判断模块,用于在所述第一对象的状态为已完成的情况下,根据预设弹窗个数和已请求到的弹窗数据的个数,判断是否需要请求第二弹窗的渲染数据,其中,所述第二弹窗的优先级比所述第一弹窗的优先级低一级;
第二调用模块,用于在需要请求所述第二弹窗的渲染数据的情况下,通过调用所述弹窗方法,以创建第二对象,并通过所述第二对象执行异步函数,其中,所述异步函数用于向服务器请求第二弹窗的渲染数据;
第二存储模块,用于在接收到所述服务器发送的所述第二弹窗的渲染数据的情况下,将所述第二弹窗的渲染数据存储在所述数据队列的末尾。
7.根据权利要求5或6所述的装置,其特征在于,还包括:
更新模块,用于在未接收到所述服务器发送的所述第一弹窗的渲染数据的情况下,更新所述第一对象的状态为已完成,或者,
在接收到所述服务器发送的所述第一弹窗的渲染数据的情况下,更新述第一对象的状态为已完成。
8.根据权利要求5或6所述的装置,其特征在于,还包括:
接收模块,用于接收用户对展示的弹窗的关闭操作对应的请求信息;
删除模块,用于响应于所述请求信息,删除所述数据队列中与所述展示的弹窗对应的渲染数据。
9.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储计算机程序,所述计算机程序被处理器执行时实现如权利要求1至4中任一项所述的弹窗展示方法的步骤。
10.一种弹窗展示装置,其特征在于,包括处理器、存储器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述计算机程序被所述处理器执行时实现如权利要求1至4中任一项所述的弹窗展示方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010378789.XA CN111736933A (zh) | 2020-05-07 | 2020-05-07 | 弹窗展示方法、装置及可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010378789.XA CN111736933A (zh) | 2020-05-07 | 2020-05-07 | 弹窗展示方法、装置及可读存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN111736933A true CN111736933A (zh) | 2020-10-02 |
Family
ID=72646746
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010378789.XA Pending CN111736933A (zh) | 2020-05-07 | 2020-05-07 | 弹窗展示方法、装置及可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111736933A (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112230775A (zh) * | 2020-10-21 | 2021-01-15 | 潍坊歌尔电子有限公司 | 弹窗处理方法、装置及计算机可读存储介质 |
CN112947830A (zh) * | 2021-03-11 | 2021-06-11 | 北京高途云集教育科技有限公司 | 一种弹窗展示方法、装置、计算机设备及存储介质 |
CN113190776A (zh) * | 2021-05-11 | 2021-07-30 | 上海哔哩哔哩科技有限公司 | 弹窗展示方法与系统 |
CN113721811A (zh) * | 2021-11-03 | 2021-11-30 | 北京每日菜场科技有限公司 | 弹窗发送方法、装置、电子设备和计算机可读介质 |
-
2020
- 2020-05-07 CN CN202010378789.XA patent/CN111736933A/zh active Pending
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112230775A (zh) * | 2020-10-21 | 2021-01-15 | 潍坊歌尔电子有限公司 | 弹窗处理方法、装置及计算机可读存储介质 |
CN112947830A (zh) * | 2021-03-11 | 2021-06-11 | 北京高途云集教育科技有限公司 | 一种弹窗展示方法、装置、计算机设备及存储介质 |
CN113190776A (zh) * | 2021-05-11 | 2021-07-30 | 上海哔哩哔哩科技有限公司 | 弹窗展示方法与系统 |
CN113721811A (zh) * | 2021-11-03 | 2021-11-30 | 北京每日菜场科技有限公司 | 弹窗发送方法、装置、电子设备和计算机可读介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111736933A (zh) | 弹窗展示方法、装置及可读存储介质 | |
US8881055B1 (en) | HTML pop-up control | |
CN106021549B (zh) | Web应用程序的页面控制方法、装置及终端设备 | |
US11579902B2 (en) | User interface rendering performance | |
EP2924590A1 (en) | Page rendering method and apparatus | |
US20130055072A1 (en) | Multi-Threaded Graphical Display System | |
CN109542382B (zh) | 手写输入内容的显示方法、电子设备及计算机存储介质 | |
CN109858962B (zh) | 基于电子书的广告显示方法及电子设备 | |
US20170004020A1 (en) | Automated batch application programming interfaces | |
US9292252B2 (en) | Methods and apparatus for voiced-enabling a web application | |
US20130086151A1 (en) | Enterprise tools enhancements | |
CN112784200A (zh) | 页面数据处理方法、装置、设备、介质和计算机程序产品 | |
CN108831444A (zh) | 用于语音对话平台的语义资源训练方法及系统 | |
CN111611037A (zh) | 用于电子书的视图对象处理方法、电子设备及存储介质 | |
CN111324330B (zh) | 电子书的播放处理方法、计算设备及计算机存储介质 | |
CN105893558B (zh) | 一种推荐数据的显示方法及系统 | |
CN113703893A (zh) | 一种页面渲染方法、装置、终端及存储介质 | |
CN110020370B (zh) | 在客户端应用中实现动画的方法、装置及动画脚本的框架 | |
CN113672150A (zh) | 电子书页面展示方法、电子设备及存储介质 | |
US9251267B2 (en) | Generating behavior information for a link | |
US11327635B1 (en) | Method for switching an online list and a local list in a same window, and computing device | |
CN110287460B (zh) | 电子书的展示方法、计算设备及计算机存储介质 | |
CN111782603A (zh) | 视频书封展示方法、计算设备及计算机存储介质 | |
US20190228057A1 (en) | Optimized browser object rendering | |
CN111198731A (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 |