CN110568988A - 一种基于web的同屏多人交互方法 - Google Patents
一种基于web的同屏多人交互方法 Download PDFInfo
- Publication number
- CN110568988A CN110568988A CN201910768629.3A CN201910768629A CN110568988A CN 110568988 A CN110568988 A CN 110568988A CN 201910768629 A CN201910768629 A CN 201910768629A CN 110568988 A CN110568988 A CN 110568988A
- Authority
- CN
- China
- Prior art keywords
- event
- touch
- screen
- web
- interaction method
- 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
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0487—Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser
- G06F3/0488—Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures
- G06F3/04883—Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures for inputting data by handwriting, e.g. gesture or text
Abstract
本发明提出了一种基于WEB的同屏多人交互方法,当用户的手指在触控屏上滑动或点击时,会产生一个事件,这个事件下传到目标节点,并在目标节点触发这个事件,为了使这个触发的这个事件只发生在本区域,不传递到其他区域,通过event.stopPropagation()或event.preventDefault()方法阻止触摸事件的冒泡传递,使得触控屏只响应目标元素上的信息;本发明的方法可以将一块屏幕按分辨率划分多个区域,每个区域的触摸事件不会跨度到另一区域,实现多人同屏操作时,互不干扰。
Description
技术领域
本发明涉及多人交互技术领域,尤其涉及一种基于WEB的同屏多人交互方法。
背景技术
当前,随着html5的兴起,web开发已经承载于各种产品形态中,起到了越来越广泛的技术支持作用,其中web技术在触摸屏设备上的应用大大简化了应用的开发难度和工作量,增加了开发的灵活度。但是由于目前大部分的web应用都是面向单用户操作使用,在应用的交互形式上有所局限,只能同时供一人操作,当多个人同时操作时,触摸屏有可能将多人的同时操作理解为单人的双指操作,或者本屏操作的信息传递到另一块屏上,因此,经常容易出现触摸屏响应错误的现象,降低了应用的使用体验。因此,为解决上述问题,本发明提供一种基于WEB的同屏多人交互方法,实现触控屏上的操作信息只在本触控屏区域响应,不会传递到另一块屏,实现多人同屏操作,互不干扰。
发明内容
有鉴于此,本发明提出了一种基于WEB的同屏多人交互方法,实现触控屏上的操作信息只在本触控屏区域响应,不会传递到另一块屏,实现多人同屏操作,互不干扰。
本发明的技术方案是这样实现的:本发明提供了一种基于WEB的同屏多人交互方法,包括以下步骤:
S1、将触控屏按分辨率分为多个的区域,并记录触控屏上每个区域中每个像素的坐标;
S2、监听触控屏上元素的触摸事件,当发生触摸事件时,产生事件对象,获取事件对象,再确定触摸事件发生的区域;
S3、在触摸事件发生的区域内阻止触摸事件的冒泡传递;
S4、后台响应触摸事件。
在以上技术方案的基础上,优选的,触控屏支持多点触控。
在以上技术方案的基础上,优选的,S2中触摸事件包括点触摸和滑动触摸。
进一步优选的,S2中事件对象包括触发事件的横纵坐标,记为(x,y)。
进一步优选的,S2还包括以下步骤:
S201、通过js监听触摸事件,并通过addEventListener()绑定触摸事件;
S202、当触摸事件发生时,先捕获触摸事件,再找到目标,最后进入冒泡阶段;
S203、在捕获阶段捕获到触发事件的横纵坐标(x,y),根据坐标确定触发事件发生的目标点。
进一步优选的,S3中通过event.stopPropagation()或event.preventDefault()方法阻止触摸事件的冒泡传递。
本发明的一种基于WEB的同屏多人交互方法相对于现有技术具有以下有益效果:
(1)通过使用DOM模型将网页转为一个JavaScript对象,从而可以用脚本进行各种操作,浏览器会根据DOM模型,将结构化文档解析成一系列的节点,再由这些节点组成一个树状结构,所有的节点和最终的树状结构,都有规范的对外接口;
(2)当用户的手指在触控屏上滑动或点击时,会产生一个事件,这个事件下传到目标节点,并在目标节点触发这个事件,为了使这个触发的这个事件只发生在本区域,不传递到其他区域,通过event.stopPropagation()或event.preventDefault()方法阻止触摸事件的冒泡传递,使得触控屏只响应目标元素上的信息;
(3)本发明的方法可以将一块屏幕按分辨率划分多个区域,每个区域的触摸事件不会跨度到另一区域,实现多人同屏操作时,互不干扰。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明一种基于WEB的同屏多人交互方法的流程图;
图2为本发明一种基于WEB的同屏多人交互方法中监听的流程图;
图3为本发明一种基于WEB的同屏多人交互方法中DOM树结构图;
图4为本发明一种基于WEB的同屏多人交互方法中DOM事件流的示意图。
具体实施方式
下面将结合本发明实施方式,对本发明实施方式中的技术方案进行清楚、完整地描述,显然,所描述的实施方式仅仅是本发明一部分实施方式,而不是全部的实施方式。基于本发明中的实施方式,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施方式,都属于本发明保护的范围。
如图1所示,本发明的一种基于WEB的同屏多人交互方法,包括以下步骤:
S1、将触控屏按分辨率分为多个的区域,并记录触控屏上每个区域中每个像素的坐标;
S2、监听触控屏上元素的触摸事件,当发生触摸事件时,产生事件对象,获取事件对象,再确定触摸事件发生的区域;
S3、在触摸事件发生的区域内阻止触摸事件的冒泡传递;
S4、后台响应触摸事件。
本实施例选用的触控屏支持多点触控,投放在触控屏上网页为动态网页,使用动态网页时,必须使用DOM,DOM全称Document Object Model,即文档对象模型,它允许脚本(js)控制Web页面、窗口和文档,DOM树结构如图3所示。通过DOM可以访问所有的HTML元素,即网页页面,连同它们所包含的文本和属性,并且可以对其中的内容进行修改和删除,同时也可以创建新的元素。本实施例将触控屏分为3个区域,可以供3个人同时操作。
本实施例中,由于使用的是动态网页,因此,必须使用js监听触摸事件,js全称是JavaScript,主要作用是使JavaScript代码与HTML标签分离,文档结构清晰,便于管理和开发。页面中接收事件的顺序,即当一个事件发生时,该事件的传播过程便叫做事件流。本实施例中,使用了DOM事件流,其包括事件捕获阶段、目标阶段和事件冒泡阶段。
进一步优选的,如图2所示,S2还包括以下步骤:
S201、通过js监听触摸事件,并通过addEventListener()绑定触摸事件;
S202、当触摸事件发生时,先捕获触摸事件,再找到目标,最后进入冒泡阶段;
S203、在捕获阶段捕获到触发事件的横纵坐标(x,y),根据坐标确定触发事件发生的目标节点。
在本实施例中,定义触摸事件的事件处理函数,并通过addEventListener()绑定事件。触摸事件包括点触摸和滑动触摸。每个触摸事件被触发后,会生成一个event对象,event对象里额外包括三个触摸列表,分别是touches、targetTouches和changedTouches,其中touches表示当前屏幕上所有手指的列表;targetTouches表示当前dom元素上手指的列表;changedTouches表示涉及当前事件的手指的列表。这些列表里的每次触摸由touch对象组成,touch对象里包含着触摸信息,主要属性如下:clientX/clientY:触摸点相对浏览器窗口的位置;pageX/pageY:触摸点相对于页面的位置;screenX/screenY:触摸点相对于屏幕的位置;identifier:touch对象的ID;target:当前的DOM元素。当触摸事件发生时,记下其pageX/pageY的坐标,记为(x,y),由于步骤S203已经记录下触控屏上每个区域中每个元素的坐标,因此,可以通过坐标判断触摸事件发生的区域。
由于本实施例中,DOM事件流触发顺序是先捕获后冒泡。如图3所示,当我们在DOM树的某个节点发生了一些操作,例如单击、鼠标移动,就会发射一个事件,这个事件从Window发出,不断经过下级节点直到触发的目标节点。在到达目标节点之前的过程,就是捕获阶段,并且所有经过的节点,都会触发这个事件。捕获阶段的任务就是建立这个事件传递路线,以便后面冒泡阶段顺着这条路线返回Window。当事件不断的传递直到目标节点的时候,最终在目标节点上触发这个事件,就是目标阶段。事件开始时,由事件发生所在的节点逐级传播到Window的过程为冒泡阶段。如图4所示,当document上有A事件,div有B事件,div里面的span有C事件,如果不给span和div加阻止事件冒泡的话,点击span时就会触发到div的B事件、document的A事件,当点击span时不想触发div和document的事件就要加上阻止事件冒泡,div也是一样的道理。冒泡传递体现在屏幕上就是,点击触控屏上某一区域内某处时,会触发触控屏上另一区域某点上的事件,进行干扰该区域的操作。当用户的手指在触控屏上滑动或点击时,会产生一个事件,这个事件下传到目标节点,并在目标节点触发这个事件,为了使这个触发的这个事件只发生在本区域,不传递到其他区域,通过event.stopPropagation()或event.preventDefault()方法阻止触摸事件的冒泡传递,使得触控屏只响应目标元素上的信息。
以上所述仅为本发明的较佳实施方式而已,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (6)
1.一种基于WEB的同屏多人交互方法,其特征在于:包括以下步骤:
S1、将触控屏按分辨率分为多个的区域,并记录触控屏上每个区域中每个像素的坐标;
S2、监听触控屏上元素的触摸事件,当发生触摸事件时,产生事件对象,获取事件对象,再确定触摸事件发生的区域;
S3、在触摸事件发生的区域内阻止触摸事件的冒泡传递;
S4、后台响应触摸事件。
2.如权利要求1所述的一种基于WEB的同屏多人交互方法,其特征在于:所述触控屏支持多点触控。
3.如权利要求1所述的一种基于WEB的同屏多人交互方法,其特征在于:所述S2中触摸事件包括点触摸和滑动触摸。
4.如权利要求3所述的一种基于WEB的同屏多人交互方法,其特征在于:所述S2中事件对象包括触发事件的横纵坐标,记为(x,y)。
5.如权利要求4所述的一种基于WEB的同屏多人交互方法,其特征在于:所述S2还包括以下步骤:
S201、通过js监听触摸事件,并通过addEventListener()绑定触摸事件;
S202、当触摸事件发生时,先捕获触摸事件,再找到目标,最后进入冒泡阶段;
S203、在捕获阶段捕获到触发事件的横纵坐标(x,y),根据坐标确定触发事件发生的目标点。
6.如权利要求5所述的一种基于WEB的同屏多人交互方法,其特征在于:所述S3中通过event.stopPropagation()或event.preventDefault()方法阻止触摸事件的冒泡传递。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910768629.3A CN110568988A (zh) | 2019-08-20 | 2019-08-20 | 一种基于web的同屏多人交互方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910768629.3A CN110568988A (zh) | 2019-08-20 | 2019-08-20 | 一种基于web的同屏多人交互方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN110568988A true CN110568988A (zh) | 2019-12-13 |
Family
ID=68773993
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910768629.3A Pending CN110568988A (zh) | 2019-08-20 | 2019-08-20 | 一种基于web的同屏多人交互方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110568988A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114356444A (zh) * | 2021-12-23 | 2022-04-15 | 中电云数智科技有限公司 | 基于浏览器DOM事件传递时的参数event指向特征选择性阻止事件传递的方法及用途 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102074178A (zh) * | 2010-07-16 | 2011-05-25 | 邓波 | 信息处理方法、应用该方法的播放终端、管理终端及系统 |
CN103019602A (zh) * | 2012-12-17 | 2013-04-03 | 锐达互动科技股份有限公司 | 一种实现多人分屏操作的方法 |
CN106325742A (zh) * | 2016-08-17 | 2017-01-11 | 北京中达金桥技术股份有限公司 | 支持多人共屏操作的屏幕操作系统 |
CN107315526A (zh) * | 2017-06-26 | 2017-11-03 | 深圳市茁壮网络股份有限公司 | 一种页面的滑动方法及装置 |
CN108415660A (zh) * | 2018-04-23 | 2018-08-17 | 广东奥园奥买家电子商务有限公司 | 一种基于屏幕互动购物的分屏多点触摸实现方法 |
-
2019
- 2019-08-20 CN CN201910768629.3A patent/CN110568988A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102074178A (zh) * | 2010-07-16 | 2011-05-25 | 邓波 | 信息处理方法、应用该方法的播放终端、管理终端及系统 |
CN103019602A (zh) * | 2012-12-17 | 2013-04-03 | 锐达互动科技股份有限公司 | 一种实现多人分屏操作的方法 |
CN106325742A (zh) * | 2016-08-17 | 2017-01-11 | 北京中达金桥技术股份有限公司 | 支持多人共屏操作的屏幕操作系统 |
CN107315526A (zh) * | 2017-06-26 | 2017-11-03 | 深圳市茁壮网络股份有限公司 | 一种页面的滑动方法及装置 |
CN108415660A (zh) * | 2018-04-23 | 2018-08-17 | 广东奥园奥买家电子商务有限公司 | 一种基于屏幕互动购物的分屏多点触摸实现方法 |
Non-Patent Citations (1)
Title |
---|
随★风: "vue 中 event.stopPropagation() 和event.preventDefault() 使用", 《HTTPS://WWW.CNBLOGS.COM/NONGZIHONG/P/10683782.HTML》 * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114356444A (zh) * | 2021-12-23 | 2022-04-15 | 中电云数智科技有限公司 | 基于浏览器DOM事件传递时的参数event指向特征选择性阻止事件传递的方法及用途 |
CN114356444B (zh) * | 2021-12-23 | 2024-02-02 | 中电云计算技术有限公司 | 基于浏览器DOM事件传递时的参数event指向特征选择性阻止事件传递的方法及用途 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TWI698122B (zh) | 一種彈幕展示方法及客戶端 | |
US10067730B2 (en) | Systems and methods for enabling replay of internet co-browsing | |
CN108463784B (zh) | 用于交互式演示控制的系统和方法 | |
US8711148B2 (en) | Method and system for generating and displaying an interactive dynamic selective view of multiply connected objects | |
US9612715B2 (en) | Real-time preview of uniform resource identifier addressable dynamic content | |
US9529783B2 (en) | Live previews for multitasking and state management | |
US9727656B2 (en) | Interactive sitemap with user footprints | |
RU2662632C2 (ru) | Представление документов фиксированного формата в формате с измененной компоновкой | |
US20090085921A1 (en) | Populate Web-Based Content Based on Space Availability | |
CN101809573A (zh) | 基于游标位置更新内容显示 | |
CN105791352B (zh) | 应用的消息推送方法和系统 | |
CN107209756B (zh) | 在标记语言文档中支持数字墨水 | |
US20130339839A1 (en) | Analyzing User Interaction | |
WO2014151693A1 (en) | Systems and methods for horizontally paginating html content | |
CN110889056B (zh) | 页面标记的方法及装置 | |
US11100069B2 (en) | Element identification in a tree data structure | |
WO2019027513A1 (en) | OBJECT RECOGNITION STATUS INDICATORS | |
CN113688341B (zh) | 动态图片分解方法、装置、电子设备及可读存储介质 | |
CN108572817B (zh) | 基于业务建模的资源动态配置的方法、装置和介质 | |
CN106991110B (zh) | 网页页面的切换方法及装置 | |
US20160188546A1 (en) | Dynamic management of site components | |
US9424110B2 (en) | Providing a recovery placeholder within an application | |
US20180267813A1 (en) | System and Method for Navigating Web-Based Application Programs | |
CN110568988A (zh) | 一种基于web的同屏多人交互方法 | |
CN113312119A (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 | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20191213 |