CN116484138A - 窗口处理方法、装置、计算机设备和存储介质 - Google Patents
窗口处理方法、装置、计算机设备和存储介质 Download PDFInfo
- Publication number
- CN116484138A CN116484138A CN202310457153.8A CN202310457153A CN116484138A CN 116484138 A CN116484138 A CN 116484138A CN 202310457153 A CN202310457153 A CN 202310457153A CN 116484138 A CN116484138 A CN 116484138A
- Authority
- CN
- China
- Prior art keywords
- window
- current window
- sub
- current
- parameters
- 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
- 238000003672 processing method Methods 0.000 title abstract description 16
- 230000008014 freezing Effects 0.000 claims abstract description 37
- 238000007710 freezing Methods 0.000 claims abstract description 37
- 238000000034 method Methods 0.000 claims abstract description 30
- 238000004590 computer program Methods 0.000 claims description 32
- 230000006870 function Effects 0.000 claims description 24
- 238000010257 thawing Methods 0.000 claims description 10
- 238000010586 diagram Methods 0.000 description 7
- 238000010606 normalization Methods 0.000 description 6
- 230000000694 effects Effects 0.000 description 5
- 238000009877 rendering Methods 0.000 description 5
- 238000001514 detection method Methods 0.000 description 4
- 230000008569 process Effects 0.000 description 4
- 230000002159 abnormal effect Effects 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000004044 response Effects 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- OKTJSMMVPCPJKN-UHFFFAOYSA-N Carbon Chemical compound [C] OKTJSMMVPCPJKN-UHFFFAOYSA-N 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 229910021389 graphene Inorganic materials 0.000 description 1
- 238000002955 isolation Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000035945 sensitivity Effects 0.000 description 1
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/958—Organisation or management of web site content, e.g. publishing, maintaining pages or automatic linking
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
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)
- User Interface Of Digital Computer (AREA)
Abstract
本申请涉及一种窗口处理方法、装置、计算机设备和存储介质,涉及数据处理技术领域。所述方法包括:响应于对当前窗口的业务请求,获取当前窗口对应的待创建的子窗口的子窗口参数,以及当前窗口所在浏览器的客户端信息;然后在根据客户端信息,识别到浏览器为特定浏览器的情况下,对子窗口参数进行标准化处理,得到子窗口的标准化参数;进而根据标准化参数,在当前窗口之上创建子窗口;进一步的,根据当前窗口的当前窗口参数,生成遮罩层,并采用遮罩层,对当前窗口进行冻结处理。采用本方法能够在创建当前窗口对应的子窗口时,生成遮罩层冻结当前窗口,防止用户对当前窗口进行重复操作,从而保证了当前窗口与子窗口之间传递的业务数据的准确性。
Description
技术领域
本申请涉及数据处理技术领域,特别是涉及一种窗口处理方法、装置、计算机设备和存储介质。
背景技术
在保留主窗口,并将主窗口作为背景进行显示的情况下,打开一个新的窗口,使得用户只能在新的窗口上进行操作,操作完成或取消后才能返回主窗口,这就是模态窗口的表现形式。
目前,非IE浏览器(Internet Explorer,微软浏览器)不支持多层次的模态窗口,然而Web(World Wide Web,全球广域网)系统中往往存在大量父窗口和子窗口的嵌套,导致使用非IE浏览器访问Web系统时,从父窗口打开子窗口后,父窗口仍然可以操作,进而使得父窗口和子窗口之间的继承关系消失,当子窗口关闭时,父窗口可能已经被修改甚至被关闭。因此,目前的非IE浏览器无法确定子窗口获取到的由父窗口传递的业务数据是否已经过时,也无法确定子窗口向父窗口传递的业务数据是否准确无误,严重影响了Web系统的可用性。
发明内容
基于此,有必要针对上述技术问题,提供一种能够在浏览器的窗口之间准确传递业务数据的窗口处理方法、装置、计算机设备和存储介质。
第一方面,本申请提供了一种窗口处理方法,该方法包括:
响应于对当前窗口的业务请求,获取当前窗口对应的待创建的子窗口的子窗口参数,以及当前窗口所在浏览器的客户端信息;
在根据客户端信息,识别到浏览器为特定浏览器的情况下,对子窗口参数进行标准化处理,得到子窗口的标准化参数;其中,特定浏览器为不具备创建模态窗口功能的浏览器;
根据标准化参数,在当前窗口之上创建子窗口;
根据当前窗口的当前窗口参数,生成遮罩层,并采用遮罩层,对当前窗口进行冻结处理。
在其中一个实施例中,根据当前窗口的当前窗口参数,生成遮罩层,并采用遮罩层,对当前窗口进行冻结处理,包括:
根据当前窗口的当前窗口参数中的尺寸参数,生成遮罩层;其中,遮罩层的尺寸参数与当前窗口的尺寸参数相同;
将遮罩层置于当前窗口与子窗口之间,以实现对当前窗口进行冻结处理。
在其中一个实施例中,根据当前窗口的当前窗口参数中的尺寸参数,生成遮罩层,包括:
为子窗口创建标识信息,并向当前窗口的属性信息中添加子窗口的标识信息;
在检测到当前窗口的属性信息中存在子窗口的标识信息的情况下,根据当前窗口的当前窗口参数中的尺寸参数,生成遮罩层。
在其中一个实施例中,该方法还包括:
根据作用于子窗口上的业务操作,生成业务请求对应的业务数据;
若检测到窗口关闭事件,则将业务数据更新至当前窗口。
在其中一个实施例中,若检测到窗口关闭事件,则将业务数据更新至当前窗口,包括:
若检测到子窗口关闭事件,则将业务数据更新至当前窗口,并对当前窗口进行解冻处理,以及删除当前窗口的属性信息中子窗口的标识信息。
在其中一个实施例中,若检测到窗口关闭事件,则将业务数据更新至当前窗口,包括:
若检测到当前窗口关闭事件,确定当前窗口的属性信息中是否存在子窗口的标识信息;
若存在,则关闭子窗口,并将业务数据更新至当前窗口;
在检测到业务数据已更新至当前窗口的情况下,关闭当前窗口。
第二方面,本申请还提供了一种窗口处理装置,该装置包括:
获取模块,用于响应于对当前窗口的业务请求,获取当前窗口对应的待创建的子窗口的子窗口参数,以及当前窗口所在浏览器的客户端信息;
标准化模块,用于在根据客户端信息,识别到浏览器为特定浏览器的情况下,对子窗口参数进行标准化处理,得到子窗口的标准化参数;其中,特定浏览器为不具备创建模态窗口功能的浏览器;
创建模块,用于根据标准化参数,在当前窗口之上创建子窗口;
冻结模块,用于根据当前窗口的当前窗口参数,生成遮罩层,并采用遮罩层,对当前窗口进行冻结处理。
第三方面,本申请还提供了一种计算机设备,所述计算机设备包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现以下步骤:
响应于对当前窗口的业务请求,获取当前窗口对应的待创建的子窗口的子窗口参数,以及当前窗口所在浏览器的客户端信息;
在根据客户端信息,识别到浏览器为特定浏览器的情况下,对子窗口参数进行标准化处理,得到子窗口的标准化参数;其中,特定浏览器为不具备创建模态窗口功能的浏览器;
根据标准化参数,在当前窗口之上创建子窗口;
根据当前窗口的当前窗口参数,生成遮罩层,并采用遮罩层,对当前窗口进行冻结处理。
第四方面,本申请还提供了一种计算机可读存储介质,所述计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现以下步骤:
响应于对当前窗口的业务请求,获取当前窗口对应的待创建的子窗口的子窗口参数,以及当前窗口所在浏览器的客户端信息;
在根据客户端信息,识别到浏览器为特定浏览器的情况下,对子窗口参数进行标准化处理,得到子窗口的标准化参数;其中,特定浏览器为不具备创建模态窗口功能的浏览器;
根据标准化参数,在当前窗口之上创建子窗口;
根据当前窗口的当前窗口参数,生成遮罩层,并采用遮罩层,对当前窗口进行冻结处理。
第五方面,本申请还提供了一种计算机程序产品,所述计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现以下步骤:
响应于对当前窗口的业务请求,获取当前窗口对应的待创建的子窗口的子窗口参数,以及当前窗口所在浏览器的客户端信息;
在根据客户端信息,识别到浏览器为特定浏览器的情况下,对子窗口参数进行标准化处理,得到子窗口的标准化参数;其中,特定浏览器为不具备创建模态窗口功能的浏览器;
根据标准化参数,在当前窗口之上创建子窗口;
根据当前窗口的当前窗口参数,生成遮罩层,并采用遮罩层,对当前窗口进行冻结处理。
上述窗口处理方法、装置、计算机设备和存储介质,响应于对当前窗口的业务请求,获取当前窗口对应的待创建的子窗口的子窗口参数,以及当前窗口所在浏览器的客户端信息;然后在根据客户端信息,识别到浏览器为特定浏览器的情况下,对子窗口参数进行标准化处理,得到子窗口的标准化参数;进而根据标准化参数,在当前窗口之上创建子窗口;进一步的,根据当前窗口的当前窗口参数,生成遮罩层,并采用遮罩层,对当前窗口进行冻结处理。相较于现有技术而言,本申请在浏览器中创建当前窗口对应的子窗口时,生成遮罩层冻结当前窗口,为不具备模态窗口功能的浏览器提供一种模拟的模态窗口功能,以达到防止用户对当前窗口进行重复操作的目的,从而保证了当前窗口与子窗口之间传递的业务数据的准确性。
附图说明
图1为一个实施例中窗口处理方法的流程示意图;
图2为一个实施例中对当前窗口进行冻结处理的流程示意图;
图3为一个实施例中生成遮罩层的流程示意图;
图4为一个实施例中将业务数据更新至当前窗口的流程示意图;
图5为又一个实施例窗口处理方法的流程示意图;
图6为一个实施例中窗口处理装置的结构框图;
图7为另一个实施例中窗口处理装置的结构框图;
图8为又一个实施例中窗口处理装置的结构框图;
图9为一个实施例中计算机设备的内部结构图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅用以解释本申请,并不用于限定本申请。
本申请实施例提供的窗口处理方法,可适用于如何对浏览器页面中的窗口进行处理(比如创建、关闭等)的情况。该方法可以由计算机设备来执行,该计算机设备可以是终端或服务器。进一步的,该方法可以由配置于计算机设备上的浏览器窗口处理工具来执行。
可以理解的是,目前非IE浏览器不支持多层次的模态窗口,导致使用非IE浏览器访问Web系统时,从父窗口打开子窗口后,父窗口仍然可以操作,或者当子窗口关闭时,父窗口可能已经被修改甚至被关闭。进而,影响了当前窗口与子窗口之间传递的业务数据的准确性。
为了向不支持模态窗口的浏览器提供一种可行的模拟的模态窗口功能,在一个实施例中,如图1所示,提供了一种窗口处理方法,该窗口处理方法可以通过预先在计算机设备上安装的浏览器窗口处理工具来实现。包括以下步骤:
S101,响应于对当前窗口的业务请求,获取当前窗口对应的待创建的子窗口的子窗口参数,以及当前窗口所在浏览器的客户端信息。
用户在使用浏览器访问Web系统时,可以通过点击当前窗口中的按键,或者其他操作,发起对当前窗口的业务请求。相应的,服务器响应于对当前窗口的业务请求,执行创建当前窗口对应的子窗口的步骤。其中,业务请求为需要在当前窗口之上创建子窗口的业务对应的请求。
例如,当前窗口中存在选择人员的设置按键,用户点击该设置按键,发起对当前窗口的业务请求,使得服务器执行创建选择人员这一子窗口的步骤,进而,用户可以在创建后的选择人员的子窗口中编辑自己想要选择的人员,以实现业务处理。
具体的,当前窗口和创建后的子窗口可以位于同一浏览器页面中,并且每一子窗口都可以作为新的当前窗口,继续创建与它对应的下一级的子窗口,以此来实现浏览器中父窗口与子窗口的嵌套。
本实施例中,服务器执行创建当前窗口对应的子窗口的步骤,包括获取当前窗口对应的待创建的子窗口的子窗口参数,以及当前窗口所在浏览器的客户端信息。其中,子窗口参数为创建子窗口所必需的参数信息,如子窗口的类名参数、子窗口的尺寸参数、子窗口的样式参数等。具体的,子窗口参数可以为Web系统上预设的参数,也可以为根据当前窗口参数实时确定的。浏览器的客户端信息包括浏览器内核信息和用户代理信息,其中,浏览器内核信息用于解释网页语法并将其渲染到网页上,决定了浏览器如何显示网页内容,而用户代理信息使得服务器能够识别用户使用的操作系统及版本、浏览器版本、浏览器兼容属性、浏览器渲染引擎、浏览器语言、浏览器插件等信息。
S102,在根据客户端信息,识别到浏览器为特定浏览器的情况下,对子窗口参数进行标准化处理,得到子窗口的标准化参数。
其中,特定浏览器为不具备创建模态窗口功能的浏览器。
可以理解的是,不同用户访问Web系统所使用的浏览器可能是不一致的,因此,根据上述客户端信息识别浏览器的类型,并基于浏览器的类型确定相应的创建子窗口的标准化参数,从而提供一种可以在不同浏览器页面中实现的创建子窗口和冻结当前窗口的方式。
具体的,根据客户端信息,即客户端包含的浏览器内核信息和用户代理信息,综合判断用户使用的浏览器的类型。若判断用户使用的浏览器为具备创建模态窗口功能的浏览器,则直接使用该浏览器的模态窗口功能,创建当前窗口对应的子窗口。若判断用户使用的浏览器为不具备创建模态窗口功能的浏览器,即特定浏览器,则先对子窗口参数进行标准化处理,再根据标准化处理得到的标准化参数进行窗口渲染,换言之,通过模拟的模态窗口功能,创建当前窗口对应的子窗口。
一般而言,具备创建模态窗口功能的浏览器为IE浏览器,不具备创建模态窗口功能的浏览器,即特定浏览器为非IE浏览器。针对特定浏览器,对创建子窗口所需的子窗口参数,进行统一的标准化处理,将其转换为可行的标准化格式,使得特定浏览器可以正确读取并进行渲染。例如,子窗口参数中初始的宽度参数表示为dialogWidth,对其进行标准化处理后表示为width,进一步的,特定浏览器读取处理后的宽度参数,才能够渲染出子窗口的宽度。
S103,根据标准化参数,在当前窗口之上创建子窗口。
标准化参数可以包括子窗口的宽度参数和高度参数,子窗口距离屏幕上边界和左边界的距离参数,以及用于指定子窗口中显示文档的URL(Universal Resource Locator,统一资源定位符)地址参数等。具体而言,在当前窗口之上创建子窗口包括根据标准化参数渲染子窗口的页面,并在渲染成功后通知当前窗口,以使得当前窗口与子窗口之间可以开始传递业务数据。
S104,根据当前窗口的当前窗口参数,生成遮罩层,并采用遮罩层,对当前窗口进行冻结处理。
遮罩层本质上是一种可实现隔离效果的图层,可以将与其相连接的图形中的图像遮盖起来,一般用于突出页面中的特定区域来展示多样的显示效果。本实施例中的遮罩层可以采用半透明遮罩层,根据当前窗口的窗口参数,如当前窗口的宽度参数和高度参数,当前窗口距离屏幕上边界和左边界的距离参数,可以确定当前窗口的尺寸和位置,从而根据当前窗口的尺寸和位置,生成合适尺寸和位置的遮罩层。
采用遮罩层覆盖住当前窗口,使得用户在打开子窗口后,对当前窗口进行的操作会被遮罩层隔离,造成操作无效,从而达到防止用户对当前窗口进行重复操作的目的。
上述方案,相较于现有技术而言,响应于对当前窗口的业务请求,获取当前窗口对应的待创建的子窗口的子窗口参数,以及当前窗口所在浏览器的客户端信息;然后在根据客户端信息,识别到浏览器为特定浏览器的情况下,对子窗口参数进行标准化处理,得到子窗口的标准化参数;进而根据标准化参数,在当前窗口之上创建子窗口;进一步的,根据当前窗口的当前窗口参数,生成遮罩层,并采用遮罩层,对当前窗口进行冻结处理,实现了在浏览器中创建当前窗口对应的子窗口时,生成遮罩层冻结当前窗口,为不具备模态窗口功能的浏览器提供一种模拟的模态窗口功能,以达到防止用户对当前窗口进行重复操作的目的,从而保证了当前窗口与子窗口之间传递的业务数据的准确性。
为了针对浏览器页面中的每一当前窗口,都可以采用合适的遮罩层对其进行冻结,在上述实施例的基础上,在一个实施例中,可以根据不同的当前窗口的窗口参数来生成对应的遮罩层,对上述S104的方法进行细化。如图2所示,具体可以包括以下步骤:
S201,根据当前窗口的当前窗口参数中的尺寸参数,生成遮罩层。
其中,遮罩层的尺寸参数与当前窗口的尺寸参数相同。
为了采用遮罩层完全覆盖住当前窗口,达到冻结当前窗口的目的,遮罩层的尺寸应该不小于当前窗口的尺寸。本实施例中,遮罩层可以采用CSS(Cascading Style Sheets,层叠样式表)技术和div(division,分割)标签来实现,尺寸参数包括宽度参数和高度参数。
采用与当前窗口相同尺寸的遮罩层覆盖当前窗口,具体的,先获取当前窗口参数中的尺寸参数,然后将其作为遮罩层的尺寸参数,生成对应的遮罩层。遮罩层可以设置为半透明效果,这样在打开创建的子窗口后,仍然可以看见当前窗口中的全部或部分信息,达到更好的显示效果。
S202,将遮罩层置于当前窗口与子窗口之间,以实现对当前窗口进行冻结处理。
创建并打开子窗口后,子窗口位于当前窗口的上层,将遮罩层置于当前窗口与子窗口之间,从而实现覆盖当前窗口。此时,对当前窗口进行的操作,会被置于当前窗口之上的遮罩层拦截住,通过将遮罩层置于当前窗口与子窗口之间,模拟了模态窗口功能,以实现对当前窗口的冻结处理。
可以理解的是,本实施例根据当前窗口对应的尺寸来生成遮罩层,并采用遮罩层覆盖住当前窗口,满足了对当前窗口进行冻结的需求,能够有效提升窗口处理的适用性。
为了在冻结当前窗口的情况下,不影响子窗口的正常使用,在上述实施例的基础上,在一个实施例中,可以在创建当前窗口对应的子窗口之后,基于是否存在子窗口的标识信息,确定是否生成遮罩层,如图3所示,上述S201具体包括以下步骤:
S301,为子窗口创建标识信息,并向当前窗口的属性信息中添加子窗口的标识信息。
子窗口的标识信息用于标识子窗口的存在状态,在成功创建子窗口的情况下,为子窗口创建标识信息,并将其返回至当前窗口,向当前窗口的属性信息中添加子窗口的标识信息,以指示创建用于覆盖当前窗口的遮罩层。
S302,在检测到当前窗口的属性信息中存在子窗口的标识信息的情况下,根据当前窗口的当前窗口参数中的尺寸参数,生成遮罩层。
若检测到当前窗口的属性信息中存在子窗口的标识信息,则确定子窗口创建成功,在进行当前窗口和子窗口之间的业务数据的传输之前,根据当前窗口的当前窗口参数中的尺寸参数,生成遮罩层来冻结用户对当前窗口的操作,并将子窗口作为最上层的可编辑窗口。
这样,确保后续当前窗口与子窗口之间传递业务数据不会出现遗漏,避免在成功创建子窗口的情况下,未及时生成遮罩层来冻结对当前窗口,或者还未成功创建子窗口的情况下,已经生成遮罩层冻结当前窗口。
为了保证业务数据传递的准确性,在一个实施例中,可以在子窗口创建成功后,实时检测窗口关闭事件,并在检测到窗口关闭事件的情况下传递业务数据,从而对窗口处理方法进行细化,提供一种传递窗口之间的业务数据的窗口处理方法。如图4所示,具体可以包括以下步骤:
S401,根据作用于子窗口上的业务操作,生成业务请求对应的业务数据。
业务请求为点击当前窗口中的按键,或者其他操作,发起对当前窗口的业务请求,业务操作为在生成的子窗口中进行的实际操作,业务数据是基于业务操作产生的。具体的,在成功创建当前窗口对应的子窗口,并生成遮罩层冻结当前窗口之后,根据用户在子窗口中进行的业务操作,生成对应的业务数据。
S402,若检测到窗口关闭事件,则将业务数据更新至当前窗口。
窗口关闭事件包括当前窗口关闭事件和子窗口关闭事件。设置定时器不停扫描当前窗口和子窗口,若检测到当前窗口关闭事件和/或子窗口关闭事件,则将基于用户在子窗口上的业务操作产生的业务数据传递回当前窗口,使得业务数据更新至当前窗口。
可以理解的是,在实际应用中检测到的窗口关闭事件可能是正常的窗口关闭事件,也可能是非正常的窗口关闭事件。例如,在当前窗口存在子窗口的情况下,检测到子窗口关闭事件,该子窗口关闭事件属于正常的窗口关闭事件,检测到当前窗口关闭事件,由于子窗口还未关闭,进而子窗口对应的业务数据还未传递至当前窗口,如果直接关闭当前窗口,那么会出现业务数据遗漏的问题,因此,该当前窗口关闭事件属于非正常的窗口关闭事件。又如,在当前窗口不存在子窗口的情况下,检测到当前窗口关闭事件,该当前窗口关闭事件属于正常的窗口关闭事件。
基于上述在实际应用中可能出现的子窗口关闭事件,在一个可选的实施例中,若检测到子窗口关闭事件,则将业务数据更新至当前窗口,并对当前窗口进行解冻处理,以及删除当前窗口的属性信息中子窗口的标识信息。
若窗口关闭事件为子窗口关闭事件,在对子窗口的业务操作有效且已生成业务数据的情况下,将业务数据更新至当前窗口,并对当前窗口进行解冻处理;在对子窗口的业务操作无效,或者用户并未进行业务操作的情况下,直接对当前窗口进行解冻处理。进一步的,删除当前窗口的属性信息中子窗口的标识信息,使得如果后续检测到当前窗口关闭,可以直接关闭当前窗口。
基于上述在实际应用中可能出现的当前窗口关闭事件,在另一个可选的实施例中,若检测到当前窗口关闭事件,确定当前窗口的属性信息中是否存在子窗口的标识信息;若存在,则关闭子窗口,并将业务数据更新至当前窗口;在检测到业务数据已更新至当前窗口的情况下,关闭当前窗口。
若窗口关闭事件为当前窗口关闭事件,先根据当前窗口的属性信息中是否存在子窗口的标识信息,确定当前窗口是否存在对应的已打开的子窗口,再根据确定结果采用不同的当前窗口关闭方式,避免出现当前窗口已经关闭,子窗口的业务数据无法传递至当前窗口,造成业务数据遗漏的情况。
具体的,根据当前窗口的属性信息中是否存在子窗口的标识信息,确定当前窗口是否存在对应的已打开的子窗口。若存在,则在子窗口关闭时,将业务数据更新至当前窗口,并在检测到业务数据已更新至当前窗口的情况下,关闭当前窗口;若不存在,则直接关闭当前窗口。
在一个实施例中,如图5所示,提供了一种窗口处理方法的优选实例,具体过程如下:
S501,响应于对当前窗口的业务请求,获取当前窗口对应的待创建的子窗口的子窗口参数,以及当前窗口所在浏览器的客户端信息。
S502,在根据客户端信息,识别到浏览器为特定浏览器的情况下,对子窗口参数进行标准化处理,得到子窗口的标准化参数。
其中,特定浏览器为不具备创建模态窗口功能的浏览器。
S503,根据标准化参数,在当前窗口之上创建子窗口。
S504,为子窗口创建标识信息,并向当前窗口的属性信息中添加子窗口的标识信息。
S505,在检测到当前窗口的属性信息中存在子窗口的标识信息的情况下,根据当前窗口的当前窗口参数中的尺寸参数,生成遮罩层。
其中,遮罩层的尺寸参数与当前窗口的尺寸参数相同.
S506,将遮罩层置于当前窗口与子窗口之间,以实现对当前窗口进行冻结处理。
S507,根据作用于子窗口上的业务操作,生成业务请求对应的业务数据。
S508,若检测到窗口关闭事件,则将业务数据更新至当前窗口。
具体的,若检测到子窗口关闭事件,则将业务数据更新至当前窗口,并对当前窗口进行解冻处理,以及删除当前窗口的属性信息中子窗口的标识信息。若检测到当前窗口关闭事件,确定当前窗口的属性信息中是否存在子窗口的标识信息;若存在,则关闭子窗口,并将业务数据更新至当前窗口;在检测到业务数据已更新至当前窗口的情况下,关闭当前窗口。
上述S501-S508的具体过程可以参见上述方法实施例的描述,其实现原理和技术效果类似,在此不再赘述。
应该理解的是,虽然如上所述的各实施例所涉及的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,如上所述的各实施例所涉及的流程图中的至少一部分步骤可以包括多个步骤或者多个阶段,这些步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤中的步骤或者阶段的至少一部分轮流或者交替地执行。
基于同样的发明构思,本申请实施例还提供了一种用于实现上述所涉及的窗口处理方法的窗口处理装置。该装置所提供的解决问题的实现方案与上述方法中所记载的实现方案相似,故下面所提供的一个或多个窗口处理装置实施例中的具体限定可以参见上文中对于窗口处理方法的限定,在此不再赘述。
在一个实施例中,如图6所示,提供了一种窗口处理装置1,包括:获取模块10,标准化模块20,创建模块30和冻结模块40,其中:
获取模块10,用于响应于对当前窗口的业务请求,获取当前窗口对应的待创建的子窗口的子窗口参数,以及当前窗口所在浏览器的客户端信息.
标准化模块20,用于在根据客户端信息,识别到浏览器为特定浏览器的情况下,对子窗口参数进行标准化处理,得到子窗口的标准化参数。
其中,特定浏览器为不具备创建模态窗口功能的浏览器。
创建模块30,用于根据标准化参数,在当前窗口之上创建子窗口。
冻结模块40,用于根据当前窗口的当前窗口参数,生成遮罩层,并采用遮罩层,对当前窗口进行冻结处理。
在一个实施例中,在图6的基础上,如图7所示,上述冻结模块40包括:
生成单元41,用于根据当前窗口的当前窗口参数中的尺寸参数,生成遮罩层。
其中,遮罩层的尺寸参数与当前窗口的尺寸参数相同。
冻结单元42,用于将遮罩层置于当前窗口与子窗口之间,以实现对当前窗口进行冻结处理。
在一个实施例中,上述生成单元41包括:
添加子单元,用于为子窗口创建标识信息,并向当前窗口的属性信息中添加子窗口的标识信息;
生成子单元,用于在检测到当前窗口的属性信息中存在子窗口的标识信息的情况下,根据当前窗口的当前窗口参数中的尺寸参数,生成遮罩层。
在一个实施例中,在图6的基础上,如图8所示,该装置1还包括:
业务操作模块50,用于根据作用于子窗口上的业务操作,生成业务请求对应的业务数据;
更新模块60,用于若检测到窗口关闭事件,则将业务数据更新至当前窗口。
在一个实施例中,更新模块60具体用于:
若检测到子窗口关闭事件,则将业务数据更新至当前窗口,并对当前窗口进行解冻处理,以及删除当前窗口的属性信息中子窗口的标识信息。
在另一个实施例中,更新模块60具体还用于:
若检测到当前窗口关闭事件,确定当前窗口的属性信息中是否存在子窗口的标识信息;若存在,则关闭子窗口,并将业务数据更新至当前窗口;在检测到业务数据已更新至当前窗口的情况下,关闭当前窗口。
上述窗口处理装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
在一个实施例中,提供了一种计算机设备,该计算机设备可以是服务器,其内部结构图可以如图9所示。该计算机设备包括通过系统总线连接的处理器、存储器和网络接口。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质和内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的数据库用于存储待处理数据的数据类型和敏感度等数据。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种窗口处理方法。
本领域技术人员可以理解,图9中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,提供了一种计算机设备,包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现以下步骤:
响应于对当前窗口的业务请求,获取当前窗口对应的待创建的子窗口的子窗口参数,以及当前窗口所在浏览器的客户端信息;在根据客户端信息,识别到浏览器为特定浏览器的情况下,对子窗口参数进行标准化处理,得到子窗口的标准化参数;其中,特定浏览器为不具备创建模态窗口功能的浏览器;根据标准化参数,在当前窗口之上创建子窗口;根据当前窗口的当前窗口参数,生成遮罩层,并采用遮罩层,对当前窗口进行冻结处理。
在一个实施例中,处理器执行根据当前窗口的当前窗口参数,生成遮罩层,并采用遮罩层,对当前窗口进行冻结处理的逻辑时,还实现以下步骤:
根据当前窗口的当前窗口参数中的尺寸参数,生成遮罩层;其中,遮罩层的尺寸参数与当前窗口的尺寸参数相同;将遮罩层置于当前窗口与子窗口之间,以实现对当前窗口进行冻结处理。
在一个实施例中,处理器执行根据当前窗口的当前窗口参数中的尺寸参数,生成遮罩层的逻辑时,还实现以下步骤:
为子窗口创建标识信息,并向当前窗口的属性信息中添加子窗口的标识信息;在检测到当前窗口的属性信息中存在子窗口的标识信息的情况下,根据当前窗口的当前窗口参数中的尺寸参数,生成遮罩层。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:
根据作用于子窗口上的业务操作,生成业务请求对应的业务数据;若检测到窗口关闭事件,则将业务数据更新至当前窗口。
在一个实施例中,处理器执行若检测到窗口关闭事件,则将业务数据更新至当前窗口的逻辑时,还实现以下步骤:
若检测到子窗口关闭事件,则将业务数据更新至当前窗口,并对当前窗口进行解冻处理,以及删除当前窗口的属性信息中子窗口的标识信息。
在一个实施例中,处理器执行若检测到窗口关闭事件,则将业务数据更新至当前窗口,还实现以下步骤:
若检测到当前窗口关闭事件,确定当前窗口的属性信息中是否存在子窗口的标识信息;若存在,则关闭子窗口,并将业务数据更新至当前窗口;在检测到业务数据已更新至当前窗口的情况下,关闭当前窗口。
在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现以下步骤:
响应于对当前窗口的业务请求,获取当前窗口对应的待创建的子窗口的子窗口参数,以及当前窗口所在浏览器的客户端信息;在根据客户端信息,识别到浏览器为特定浏览器的情况下,对子窗口参数进行标准化处理,得到子窗口的标准化参数;其中,特定浏览器为不具备创建模态窗口功能的浏览器;根据标准化参数,在当前窗口之上创建子窗口;根据当前窗口的当前窗口参数,生成遮罩层,并采用遮罩层,对当前窗口进行冻结处理。
在一个实施例中,计算机程序根据当前窗口的当前窗口参数,生成遮罩层,并采用遮罩层,对当前窗口进行冻结处理的逻辑被处理器执行时,还实现以下步骤:
根据当前窗口的当前窗口参数中的尺寸参数,生成遮罩层;其中,遮罩层的尺寸参数与当前窗口的尺寸参数相同;将遮罩层置于当前窗口与子窗口之间,以实现对当前窗口进行冻结处理。
在一个实施例中,计算机程序根据当前窗口的当前窗口参数中的尺寸参数,生成遮罩层的逻辑被处理器执行时,还实现以下步骤:
为子窗口创建标识信息,并向当前窗口的属性信息中添加子窗口的标识信息;在检测到当前窗口的属性信息中存在子窗口的标识信息的情况下,根据当前窗口的当前窗口参数中的尺寸参数,生成遮罩层。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
根据作用于子窗口上的业务操作,生成业务请求对应的业务数据;若检测到窗口关闭事件,则将业务数据更新至当前窗口。
在一个实施例中,计算机程序若检测到窗口关闭事件,则将业务数据更新至当前窗口的逻辑被处理器执行时,还实现以下步骤:
若检测到子窗口关闭事件,则将业务数据更新至当前窗口,并对当前窗口进行解冻处理,以及删除当前窗口的属性信息中子窗口的标识信息。
在一个实施例中,计算机程序若检测到窗口关闭事件,则将业务数据更新至当前窗口的逻辑被处理器执行时,还实现以下步骤:
若检测到当前窗口关闭事件,确定当前窗口的属性信息中是否存在子窗口的标识信息;若存在,则关闭子窗口,并将业务数据更新至当前窗口;在检测到业务数据已更新至当前窗口的情况下,关闭当前窗口。
在一个实施例中,提供了一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现以下步骤:
响应于对当前窗口的业务请求,获取当前窗口对应的待创建的子窗口的子窗口参数,以及当前窗口所在浏览器的客户端信息;在根据客户端信息,识别到浏览器为特定浏览器的情况下,对子窗口参数进行标准化处理,得到子窗口的标准化参数;其中,特定浏览器为不具备创建模态窗口功能的浏览器;根据标准化参数,在当前窗口之上创建子窗口;根据当前窗口的当前窗口参数,生成遮罩层,并采用遮罩层,对当前窗口进行冻结处理。
在一个实施例中,计算机程序根据当前窗口的当前窗口参数,生成遮罩层,并采用遮罩层,对当前窗口进行冻结处理的逻辑被处理器执行时,还实现以下步骤:
根据当前窗口的当前窗口参数中的尺寸参数,生成遮罩层;其中,遮罩层的尺寸参数与当前窗口的尺寸参数相同;将遮罩层置于当前窗口与子窗口之间,以实现对当前窗口进行冻结处理。
在一个实施例中,计算机程序根据当前窗口的当前窗口参数中的尺寸参数,生成遮罩层的逻辑被处理器执行时,还实现以下步骤:
为子窗口创建标识信息,并向当前窗口的属性信息中添加子窗口的标识信息;在检测到当前窗口的属性信息中存在子窗口的标识信息的情况下,根据当前窗口的当前窗口参数中的尺寸参数,生成遮罩层。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
根据作用于子窗口上的业务操作,生成业务请求对应的业务数据;若检测到窗口关闭事件,则将业务数据更新至当前窗口。
在一个实施例中,计算机程序若检测到窗口关闭事件,则将业务数据更新至当前窗口的逻辑被处理器执行时,还实现以下步骤:
若检测到子窗口关闭事件,则将业务数据更新至当前窗口,并对当前窗口进行解冻处理,以及删除当前窗口的属性信息中子窗口的标识信息。
在一个实施例中,计算机程序若检测到窗口关闭事件,则将业务数据更新至当前窗口的逻辑被处理器执行时,还实现以下步骤:
若检测到当前窗口关闭事件,确定当前窗口的属性信息中是否存在子窗口的标识信息;若存在,则关闭子窗口,并将业务数据更新至当前窗口;在检测到业务数据已更新至当前窗口的情况下,关闭当前窗口。
需要说明的是,本申请所涉及的用户信息(包括但不限于客户端信息中的浏览器内核信息和用户代理信息等)和数据(包括但不限于用于分析的数据、存储的数据、展示的数据等),均为经用户授权或者经过各方充分授权的信息和数据。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、数据库或其它介质的任何引用,均可包括非易失性和易失性存储器中的至少一种。非易失性存储器可包括只读存储器(Read-OnlyMemory,ROM)、磁带、软盘、闪存、光存储器、高密度嵌入式非易失性存储器、阻变存储器(ReRAM)、磁变存储器(Magnetoresistive Random Access Memory,MRAM)、铁电存储器(Ferroelectric Random Access Memory,FRAM)、相变存储器(Phase Change Memory,PCM)、石墨烯存储器等。易失性存储器可包括随机存取存储器(Random Access Memory,RAM)或外部高速缓冲存储器等。作为说明而非局限,RAM可以是多种形式,比如静态随机存取存储器(Static Random Access Memory,SRAM)或动态随机存取存储器(Dynamic RandomAccess Memory,DRAM)等。本申请所提供的各实施例中所涉及的数据库可包括关系型数据库和非关系型数据库中至少一种。非关系型数据库可包括基于区块链的分布式数据库等,不限于此。本申请所提供的各实施例中所涉及的处理器可为通用处理器、中央处理器、图形处理器、数字信号处理器、可编程逻辑器、基于量子计算的数据处理逻辑器等,不限于此。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本申请专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请的保护范围应以所附权利要求为准。
Claims (10)
1.一种窗口处理方法,其特征在于,所述方法包括:
响应于对当前窗口的业务请求,获取所述当前窗口对应的待创建的子窗口的子窗口参数,以及所述当前窗口所在浏览器的客户端信息;
在根据所述客户端信息,识别到所述浏览器为特定浏览器的情况下,对所述子窗口参数进行标准化处理,得到所述子窗口的标准化参数;其中,所述特定浏览器为不具备创建模态窗口功能的浏览器;
根据所述标准化参数,在所述当前窗口之上创建所述子窗口;
根据所述当前窗口的当前窗口参数,生成遮罩层,并采用所述遮罩层,对所述当前窗口进行冻结处理。
2.根据权利要求1所述的方法,其特征在于,所述根据所述当前窗口的当前窗口参数,生成遮罩层,并采用所述遮罩层,对所述当前窗口进行冻结处理,包括:
根据所述当前窗口的当前窗口参数中的尺寸参数,生成遮罩层;其中,所述遮罩层的尺寸参数与所述当前窗口的尺寸参数相同;
将所述遮罩层置于所述当前窗口与所述子窗口之间,以实现对所述当前窗口进行冻结处理。
3.根据权利要求2所述的方法,其特征在于,所述根据所述当前窗口的当前窗口参数中的尺寸参数,生成遮罩层,包括:
为所述子窗口创建标识信息,并向所述当前窗口的属性信息中添加所述子窗口的标识信息;
在检测到所述当前窗口的属性信息中存在所述子窗口的标识信息的情况下,根据所述当前窗口的当前窗口参数中的尺寸参数,生成遮罩层。
4.根据权利要求3所述的方法,其特征在于,所述方法还包括:
根据作用于所述子窗口上的业务操作,生成所述业务请求对应的业务数据;
若检测到窗口关闭事件,则将所述业务数据更新至所述当前窗口。
5.根据权利要求4所述的方法,其特征在于,所述若检测到窗口关闭事件,则将所述业务数据更新至所述当前窗口,包括:
若检测到子窗口关闭事件,则将所述业务数据更新至所述当前窗口,并对所述当前窗口进行解冻处理,以及删除所述当前窗口的属性信息中子窗口的标识信息。
6.根据权利要求4所述的方法,其特征在于,所述若检测到窗口关闭事件,则将所述业务数据更新至所述当前窗口,包括:
若检测到当前窗口关闭事件,确定所述当前窗口的属性信息中是否存在子窗口的标识信息;
若存在,则关闭所述子窗口,并将所述业务数据更新至所述当前窗口;
在检测到所述业务数据已更新至所述当前窗口的情况下,关闭所述当前窗口。
7.一种窗口处理装置,其特征在于,所述装置包括:
获取模块,用于响应于对当前窗口的业务请求,获取所述当前窗口对应的待创建的子窗口的子窗口参数,以及所述当前窗口所在浏览器的客户端信息;
标准化模块,用于在根据所述客户端信息,识别到所述浏览器为特定浏览器的情况下,对所述子窗口参数进行标准化处理,得到所述子窗口的标准化参数;其中,所述特定浏览器为不具备创建模态窗口功能的浏览器;
创建模块,用于根据所述标准化参数,在所述当前窗口之上创建所述子窗口;
冻结模块,用于根据所述当前窗口的当前窗口参数,生成遮罩层,并采用所述遮罩层,对所述当前窗口进行冻结处理。
8.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至6中任一项所述的方法的步骤。
9.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至6中任一项所述的方法的步骤。
10.一种计算机程序产品,包括计算机程序,其特征在于,该计算机程序被处理器执行时实现权利要求1至6中任一项所述的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310457153.8A CN116484138A (zh) | 2023-04-24 | 2023-04-24 | 窗口处理方法、装置、计算机设备和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310457153.8A CN116484138A (zh) | 2023-04-24 | 2023-04-24 | 窗口处理方法、装置、计算机设备和存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116484138A true CN116484138A (zh) | 2023-07-25 |
Family
ID=87216272
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310457153.8A Pending CN116484138A (zh) | 2023-04-24 | 2023-04-24 | 窗口处理方法、装置、计算机设备和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116484138A (zh) |
-
2023
- 2023-04-24 CN CN202310457153.8A patent/CN116484138A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8041763B2 (en) | Method and system for providing sharable bookmarking of web pages consisting of dynamic content | |
US8386955B1 (en) | User-optimized content for web browsing windows | |
JP5821678B2 (ja) | ウェブ・アプリケーションのブラウザに依存しない自動互換性チェックのためのウェブ・サービス | |
US8689189B1 (en) | Systems and methods for testing widgets | |
AU2012370492B2 (en) | Graphical overlay related to data mining and analytics | |
US8645760B2 (en) | Alternate procedures assisting computer users in solving problems related to error and informational messages | |
US9436763B1 (en) | Infrastructure enabling intelligent execution and crawling of a web application | |
US8983935B2 (en) | Methods for utilizing a javascript emulator in a web content proxy server and devices thereof | |
CN107256256B (zh) | 连接到联网存储系统的本地存储器 | |
EP2418592A1 (en) | A shareable content container | |
US20080010359A1 (en) | Computer implemented method and system for managing server-based rendering of messages in a heterogeneous environment | |
US8706778B2 (en) | Methods and systems for an action-based interface for files and other assets | |
JP2011039668A (ja) | Webページの表示方法、計算機システム及びプログラム | |
US9436669B1 (en) | Systems and methods for interfacing with dynamic web forms | |
CN110866202A (zh) | 一种前端分页的方法及装置、可读存储介质 | |
CN110795651A (zh) | 用于保存前端数据的方法、装置及电子设备 | |
US20210334113A1 (en) | Method and device for lazy loading of js scripts | |
CN107526678B (zh) | Web应用程序的测试方法和装置 | |
CN110413279A (zh) | 数据加载方法和装置 | |
CN116484138A (zh) | 窗口处理方法、装置、计算机设备和存储介质 | |
CN114185742A (zh) | 网页监控方法、装置、设备及存储介质 | |
CN111177614A (zh) | 面向网页第三方注入内容的来源追踪方法、装置 | |
CN116432229A (zh) | 浏览器防截屏方法、装置、计算机设备、介质和程序产品 | |
US20210248206A1 (en) | Systems and methods for generating data retrieval steps | |
CN117407620A (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 |