CN114356444B - 基于浏览器DOM事件传递时的参数event指向特征选择性阻止事件传递的方法及用途 - Google Patents

基于浏览器DOM事件传递时的参数event指向特征选择性阻止事件传递的方法及用途 Download PDF

Info

Publication number
CN114356444B
CN114356444B CN202111592855.4A CN202111592855A CN114356444B CN 114356444 B CN114356444 B CN 114356444B CN 202111592855 A CN202111592855 A CN 202111592855A CN 114356444 B CN114356444 B CN 114356444B
Authority
CN
China
Prior art keywords
event
transmission
selectively
prevented
parameter
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.)
Active
Application number
CN202111592855.4A
Other languages
English (en)
Other versions
CN114356444A (zh
Inventor
王利
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Zhongdian Cloud Computing Technology Co ltd
Original Assignee
Zhongdian Cloud Computing Technology Co ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Zhongdian Cloud Computing Technology Co ltd filed Critical Zhongdian Cloud Computing Technology Co ltd
Priority to CN202111592855.4A priority Critical patent/CN114356444B/zh
Publication of CN114356444A publication Critical patent/CN114356444A/zh
Application granted granted Critical
Publication of CN114356444B publication Critical patent/CN114356444B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Information Transfer Between Computers (AREA)

Abstract

本发明涉及信息传输技术和计算机软件领域,尤其涉及一种基于浏览器DOM事件传递时的参数event指向特征选择性阻止事件传递的方法。本方法基于浏览器DOM事件传递时的参数event指向同一个引用的特性,利用event传递自定义信息,并在接下来的事件传递过程中通过检测该自定义信息,有选择地阻止指定事件执行,但不阻止事件流的正常传递,因此不会对第三方组件的事件传递造成破坏,从而实现了选择性阻止事件传递的目的;利用本方法不会造成全局变量污染,也不暴露当前状态,本方法的实施不依赖定时器因而具有较高的方法确定性,且本方法使用简便,自定义信息随event生成,不必考虑重置和清除,为用户的使用提供了便利。

Description

基于浏览器DOM事件传递时的参数event指向特征选择性阻止 事件传递的方法及用途
技术领域
本发明涉及信息工程、信息传输技术和计算机软件领域,尤其涉及一种基于浏览器DOM事件传递时的参数event指向特征选择性阻止事件传递的方法及其用途。
背景技术
在浏览器DOM事件触发时,会经历从根元素到触发事件的叶子元素的事件捕获阶段,再经历从触发事件的叶子元素到根元素的事件冒泡阶段。一些情况下,我们希望这一连串事件只在指定的元素上触发,而不在它的祖先元素(冒泡阶段)或子孙元素(捕获阶段)上触发,这时就需要阻止事件的传递。
目前常用的阻止事件传递的方法有以下两种,但都具有一定的局限性和技术缺陷,从而给实际应用造成了许多障碍和困难。
(1)直接使用event.stopPropagation()方法阻止事件传递;
此方法虽然简单方便,但会完全阻止当前事件流的传递。
(2)设定一个全局变量V,在需要阻止事件触发时,改变变量V的状态,在接下来的事件传递中根据变量V状态,选择是否阻止事件执行,在事件传递结束后,再重置变量V为初始态(为保证重置变量V的方法不会被意外阻止,常需使用定时器重置变量V);
此方法能够在不阻止事件流传递的情况下,实现阻止指定事件的执行,但此法会造成全局变量污染,同时依赖定时器重置变量V存在不确定性。
因此,如何开发一种新方法,使其既能阻止指定事件的执行,但又不阻止事件流的正常传递,而且不会造成全局变量污染,同时不依赖定时器而具有较高的方法确定性,是本领域技术人员亟待解决的重要问题。
发明内容
为了克服现有的阻止事件传递方法的上述缺陷和不足,本发明提供了一套解决方案。本方法基于浏览器DOM事件传递时的参数event指向同一个引用(即物理存储地址)的特性,利用event传递自定义信息,并在接下来的事件传递过程中通过检测该自定义信息,进而有选择地阻止指定事件执行,但不阻止事件流的正常传递,从而实现了选择性阻止事件传递的目的;利用本方法既可以阻止指定事件的执行,又不影响事件流的正常传递,而且不会造成全局变量污染,也不暴露当前状态,同时本方法的实施不依赖定时器因而具有较高的方法确定性。
具体而言,本发明提供了一种基于浏览器DOM事件传递时的参数event指向特征选择性阻止事件传递的方法,本方法基于浏览器DOM事件传递时的参数event指向同一个引用的特性,利用event传递自定义信息,并在接下来的事件传递过程中通过检测该自定义信息,进而有选择地阻止指定事件执行,但不阻止事件流的正常传递,从而实现了选择性阻止事件传递的目的。
优选地,在本方法中A1、A2为递归元素,当A2元素事件触发时,在event上添加一个自定义属性,但不阻止事件传递;当事件进一步传递到A1元素上时,根据event上的自定义属性的值判断是否需要执行该事件,从而实现选择性阻止事件传递,同时不妨碍未知的第三方插件的事件的执行。
进一步地,本发明还涉及上述选择性阻止事件传递的方法在信息传输技术中的用途。
以及,上述选择性阻止事件传递的方法在信息传输软件开发中的用途。
此外,本发明还提供了一种用于选择性阻止事件传递的计算机可读存储介质,所述计算机可读存储介质中存储有指令,当其在计算机上运行时,使得计算机执行上述选择性阻止事件传递的方法。
综上,与传统阻止事件传递的方法相比,本发明方法具有以下优点:
(1)由于本方法没有使用stopPropagation阻止事件流的传递,因而可以实现有选择地阻止指定事件执行,但不影响事件流的正常传递,从而不会对第三方组件的事件传递造成破坏。
(2)本方法利用event传递信息,不会造成全局变量的污染,并且大限度地避免了当前状态的暴露。
(3)使用简便,自定义信息随event生成,不必考虑重置和清除,为用户的使用提供了极大地便利。
(4)本方法的实施不依赖定时器,因而具有较高的方法确定性。
附图说明
为了更清楚地说明本发明实施例技术方案,下面对实施例描述中所需要使用的附图作简要介绍。显而易见地,下面描述中的附图仅是本发明中记载的一些实施例,而不是全部实施例,对于本领域技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明方法的具体实施示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合具体实施例及相应的附图对本发明的技术方案进行清楚、完整地描述。显然,所描述的实施例仅是本发明一部分实施例,而不是全部的实施例,本发明还可以通过另外不同的具体实施方式加以实施或应用,本说明书中的各项细节也可以基于不同观点与应用,在没有背离本发明的精神下进行各种修饰或改变。
同时,应理解,本发明的保护范围并不局限于下述特定的具体实施方案;还应当理解,本发明实施例中使用的术语是为了描述特定的具体实施方案,而不是为了限制本发明的保护范围。
实施例1:一种基于浏览器DOM事件传递时的参数event指向特征选择性阻止事件传递的方法,本方法基于浏览器DOM事件传递时的参数event指向同一个引用的特性,利用event传递自定义信息,并在接下来的事件传递过程中通过检测该自定义信息,进而有选择地阻止指定事件执行,但不阻止事件流的正常传递,从而实现了选择性阻止事件传递的目的。
例如,在下述场景中(参见图1):
A1、A2为递归元素,A1、A2里面分别包括第三方插件生成元素B1和B2。当点击A2元素及其子元素时,将A2元素标注为当前选中;当点击A1元素及其子元素时(此时不包括A2元素及其子元素),将A1元素标注为当前选中;当点击B1元素时,将其标为蓝色,点击B1元素之外的其他位置时,将B1元素重置;当点击B2元素时,将其标为蓝色,点击B2元素之外的其他位置时,将B2元素重置;第三方插件实现B1、B2元素重置的方法绑定在body的点击事件上。
此时,用户点击了B2元素,B2元素变为蓝色,接着再点击A2元素,这时我们既需要阻止事件传递到A1元素上,又需要将事件传递到body上。
根据本发明方案进行处置:当A2元素事件触发时,在event上添加一个自定义属性如targetMc:true,但不阻止事件传递;当事件进一步传递到A1元素上时,根据event上的自定义属性targetMc的值判断是否需要执行该事件,如是则执行该事件,如否则阻止该事件的执行,从而实现选择性阻止事件传递,同时不妨碍未知的第三方插件的事件的执行。
实施例2:一种用于选择性阻止事件传递的计算机可读存储介质,所述计算机可读存储介质中存储有指令,当其在计算机上运行时,使得计算机执行实施例1所述的选择性阻止事件传递的方法。
以上所述仅为本发明的实施例而已,并不用于限制本发明。对于本领域技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原理之内所作的任何修改、替换等,均应包含在本发明的权利要求保护范围之内。

Claims (4)

1.一种基于浏览器DOM事件传递时的参数event指向特征选择性阻止事件传递的方法,其特征在于,本方法基于浏览器DOM事件传递时的参数event指向同一个引用的特性,利用event传递自定义信息,并在接下来的事件传递过程中通过检测该自定义信息,进而有选择地阻止指定事件执行,但不阻止事件流的正常传递,从而实现了选择性阻止事件传递的目的;
A1、A2为递归元素,当A2元素事件触发时,在event上添加一个自定义属性,但不阻止事件传递;当事件进一步传递到A1元素上时,根据event上的自定义属性的值判断是否需要执行该事件,从而实现选择性阻止事件传递,同时不妨碍未知的第三方插件的事件的执行。
2.根据权利要求1所述的选择性阻止事件传递的方法在信息传输技术中的用途。
3.根据权利要求1所述的选择性阻止事件传递的方法在信息传输软件开发中的用途。
4.一种用于选择性阻止事件传递的计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有指令,当其在计算机上运行时,使得计算机执行权利要求1所述的选择性阻止事件传递的方法。
CN202111592855.4A 2021-12-23 2021-12-23 基于浏览器DOM事件传递时的参数event指向特征选择性阻止事件传递的方法及用途 Active CN114356444B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202111592855.4A CN114356444B (zh) 2021-12-23 2021-12-23 基于浏览器DOM事件传递时的参数event指向特征选择性阻止事件传递的方法及用途

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202111592855.4A CN114356444B (zh) 2021-12-23 2021-12-23 基于浏览器DOM事件传递时的参数event指向特征选择性阻止事件传递的方法及用途

Publications (2)

Publication Number Publication Date
CN114356444A CN114356444A (zh) 2022-04-15
CN114356444B true CN114356444B (zh) 2024-02-02

Family

ID=81101101

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202111592855.4A Active CN114356444B (zh) 2021-12-23 2021-12-23 基于浏览器DOM事件传递时的参数event指向特征选择性阻止事件传递的方法及用途

Country Status (1)

Country Link
CN (1) CN114356444B (zh)

Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CA2452427A1 (en) * 2002-12-09 2004-06-09 Corel Corporation System and method for manipulating a document object model
CA2414053A1 (en) * 2002-12-09 2004-06-09 Corel Corporation System and method for manipulating a document object model
CN1647070A (zh) * 2001-06-22 2005-07-27 诺萨·欧莫贵 用于知识检索、管理、交付和表示的系统和方法
WO2005082102A2 (en) * 2004-02-26 2005-09-09 Datapower Technology, Inc. Method and apparatus of streaming data transformation using code generator and translator
CN104572043A (zh) * 2013-10-16 2015-04-29 阿里巴巴集团控股有限公司 一种对客户端应用的控件进行实时埋点的方法及装置
CN107846413A (zh) * 2017-11-29 2018-03-27 济南浪潮高新科技投资发展有限公司 一种防御跨站脚本攻击的方法及系统
CN110568988A (zh) * 2019-08-20 2019-12-13 武汉鼎森电子科技有限公司 一种基于web的同屏多人交互方法
CN111581067A (zh) * 2020-04-21 2020-08-25 北京龙云科技有限公司 一种数据采集方法和装置
CN113127165A (zh) * 2019-12-30 2021-07-16 尤帕斯公司 用于机器人进程自动化(rpa)的触发服务管理
CN113687824A (zh) * 2021-10-26 2021-11-23 中电云数智科技有限公司 一种可视化界面的编程语言数据生成系统和方法

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2008155779A2 (en) * 2007-06-20 2008-12-24 Sanjeev Krishnan A method and apparatus for software simulation
US20090077091A1 (en) * 2007-09-18 2009-03-19 Gilad Khen System for development and hosting of network applications
US20100306642A1 (en) * 2007-11-23 2010-12-02 Koninklijke Philips Electronics N.V. Co-browsing (java) scripted html documents
US10333991B2 (en) * 2014-07-09 2019-06-25 Hewlett-Packard Development Company, L.P. Web browser policy for HTTP-based application
US10031730B2 (en) * 2015-04-22 2018-07-24 Salesforce.Com, Inc. Systems and methods of implementing extensible browser executable components

Patent Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1647070A (zh) * 2001-06-22 2005-07-27 诺萨·欧莫贵 用于知识检索、管理、交付和表示的系统和方法
CA2452427A1 (en) * 2002-12-09 2004-06-09 Corel Corporation System and method for manipulating a document object model
CA2414053A1 (en) * 2002-12-09 2004-06-09 Corel Corporation System and method for manipulating a document object model
WO2005082102A2 (en) * 2004-02-26 2005-09-09 Datapower Technology, Inc. Method and apparatus of streaming data transformation using code generator and translator
CN104572043A (zh) * 2013-10-16 2015-04-29 阿里巴巴集团控股有限公司 一种对客户端应用的控件进行实时埋点的方法及装置
CN107846413A (zh) * 2017-11-29 2018-03-27 济南浪潮高新科技投资发展有限公司 一种防御跨站脚本攻击的方法及系统
CN110568988A (zh) * 2019-08-20 2019-12-13 武汉鼎森电子科技有限公司 一种基于web的同屏多人交互方法
CN113127165A (zh) * 2019-12-30 2021-07-16 尤帕斯公司 用于机器人进程自动化(rpa)的触发服务管理
CN111581067A (zh) * 2020-04-21 2020-08-25 北京龙云科技有限公司 一种数据采集方法和装置
CN113687824A (zh) * 2021-10-26 2021-11-23 中电云数智科技有限公司 一种可视化界面的编程语言数据生成系统和方法

Non-Patent Citations (6)

* Cited by examiner, † Cited by third party
Title
K. Ozaki et al.A fault-tolerant model of wireless sensor-actor network.《Ninth IEEE International Symposium on Object and Component-Oriented Real-Time Distributed Computing (ISORC'06)》.2006,1-8. *
Web应用程序中异步请求时序问题检测研究;吉华斌;《中国优秀硕士学位论文全文数据库信息科技辑》;1-66 *
一种基于虚拟机自省的安全检测框架;刘哲元 等;《计算机工程》;第42卷(第3期);182-187 *
基于事件驱动的面向服务计算模型研究;何浪;《中国优秀硕士学位论文全文数据库信息科技辑》;1-66 *
基于捕获/重放的Web应用跨浏览器兼容性检测;吴国全 等;《计算机研究与发展》;第54卷(第3期);623-632 *
基于虚拟DOM的前端可视化编辑系统的设计与实现;杨磊;《中国优秀硕士学位论文全文数据库信息科技辑》;1-68 *

Also Published As

Publication number Publication date
CN114356444A (zh) 2022-04-15

Similar Documents

Publication Publication Date Title
CN104951375B (zh) 基于函数拦截技术的手机app性能数据采集方法
EP3349137A1 (en) Client-side attack detection in web applications
CN105404620A (zh) 一种表单校验的方法和装置
TWI672027B (zh) 網頁中的資料處理方法、裝置及系統
CN106250107A (zh) 一种数据统计方法及系统
CN111090431B (zh) 一种数据处理方法及装置
CN111143723A (zh) 页面跳转方法、装置、电子设备及存储介质
KR20190093591A (ko) 인스턴트 메시징 그룹 관리 방법 및 장치
CN104679739A (zh) 一种非真实信息传播控制方法
CN114356444B (zh) 基于浏览器DOM事件传递时的参数event指向特征选择性阻止事件传递的方法及用途
CN107480117A (zh) 自动化页面表单数据的恢复方法及装置
CN105939342A (zh) Http攻击检测方法及装置
CN111585956A (zh) 一种网址防刷验证方法与装置
CN110825304A (zh) 触摸事件处理方法、装置及终端设备
CN104462242B (zh) 网页回流量统计方法及装置
CN108073703A (zh) 一种评论信息获取方法、装置、设备及存储介质
CN108062459B (zh) 防止抓取页面信息的方法及装置
CN107888623A (zh) 直播软件音视频数据流防劫持方法及装置
CN103581156A (zh) 一种可信网络和可信网络的工作方法
CN106341497A (zh) 数字id生成方法及装置
CN106790442A (zh) 一种防止表单重复提交的处理方法
CN110968770A (zh) 一种终止爬虫工具爬取的方法及装置
Sui et al. An effective fuzz input generation method for protocol testing
CN105979021B (zh) 一种信息处理方法及用户终端
TW201909077A (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
CB02 Change of applicant information

Address after: No. N3013, 3rd Floor, R&D Building N, Artificial Intelligence Science and Technology Park, Wuhan Economic and Technological Development Zone, Wuhan City, Hubei Province, 430058

Applicant after: Zhongdian Cloud Computing Technology Co.,Ltd.

Address before: 430058 No. n3013, 3rd floor, R & D building, building n, Artificial Intelligence Science Park, economic and Technological Development Zone, Caidian District, Wuhan City, Hubei Province

Applicant before: CLP cloud Digital Intelligence Technology Co.,Ltd.

CB02 Change of applicant information
GR01 Patent grant
GR01 Patent grant
PE01 Entry into force of the registration of the contract for pledge of patent right

Denomination of invention: Method and purpose of selectively preventing event propagation based on the parameter event pointing feature during browser DOM event propagation

Granted publication date: 20240202

Pledgee: Industrial and Commercial Bank of China Limited Wuhan Economic and Technological Development Zone Branch

Pledgor: Zhongdian Cloud Computing Technology Co.,Ltd.

Registration number: Y2024980026310

PE01 Entry into force of the registration of the contract for pledge of patent right