CN106610833B - 一种触发重叠html元素鼠标事件的方法及装置 - Google Patents
一种触发重叠html元素鼠标事件的方法及装置 Download PDFInfo
- Publication number
- CN106610833B CN106610833B CN201510708633.2A CN201510708633A CN106610833B CN 106610833 B CN106610833 B CN 106610833B CN 201510708633 A CN201510708633 A CN 201510708633A CN 106610833 B CN106610833 B CN 106610833B
- Authority
- CN
- China
- Prior art keywords
- mouse event
- html
- html element
- mouse
- condition
- 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.)
- Expired - Fee Related
Links
- 238000000034 method Methods 0.000 title claims abstract description 38
- 230000001960 triggered effect Effects 0.000 claims abstract description 50
- 230000006870 function Effects 0.000 description 41
- 238000010586 diagram Methods 0.000 description 10
- 238000004590 computer program Methods 0.000 description 8
- 230000008569 process Effects 0.000 description 7
- 230000008901 benefit Effects 0.000 description 3
- 230000007547 defect Effects 0.000 description 3
- 230000004048 modification Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
Images
Landscapes
- User Interface Of Digital Computer (AREA)
Abstract
本发明公开了一种触发重叠HTML元素鼠标事件的方法及装置,涉及互联网技术领域,解决了在多个绝对定位的HTML元素重叠时无法根据实际条件触发各个HTML元素的鼠标事件的问题。本发明的方法包括:记录重叠的HTML元素及其鼠标事件;对每个HTML元素添加鼠标事件触发条件;给位于最上层的HTML元素添加所有鼠标事件;当最上层的HTML元素中有鼠标事件被触发时,依次获取具有被触发鼠标事件的下层HTML元素,并根据其鼠标事件触发条件对下层HTML元素执行相应的操作。本发明主要用于在多个绝对定位的HTML元素相互重叠时能够自定义触发各个HTML元素的鼠标事件。
Description
技术领域
本发明涉及互联网技术领域,特别是涉及一种触发重叠HTML元素鼠标事件的方法及装置。
背景技术
在超文本标记语言(Hyper text Markup Language,简称HTML)页面布局中,可使用绝对定位的方法准确定位HTML元素的位置,当多个HTML元素都使用绝对定位时,这些HTML元素的位置会发生重叠,各自的内容之间会相互遮挡,为了避免上述问题的出现,目前所有的主流浏览器都支持开发出z-index属性用于控制绝对定位的HTML元素的置顶顺序,z-index属性值越大的HTML元素,其在页面中的位置越靠前。当鼠标点击或移动到这些位置重叠的HTML元素上时,只会触发z-index属性值最大的HTML元素的点击事件,而不会触发其他HTML元素的点击事件。在是在很多场景下,当多个HTML元素相互重叠时,需要触发的并不是z-index属性值最大的HTML元素,而是其他一些被重叠的HTML元素。
发明内容
有鉴于此,本发明提出了一种触发重叠HTML元素鼠标事件的方法及装置,主要目的在于解决在多个绝对定位的HTML元素重叠时无法根据实际条件触发各个HTML元素的鼠标事件的问题。
依据本发明的第一个方面,本发明提出了一种触发重叠HTML元素鼠标事件的方法,包括:
记录重叠的HTML元素及其鼠标事件;
对每个HTML元素添加鼠标事件触发条件;
给位于最上层的HTML元素添加所有鼠标事件;
当最上层的HTML元素中有鼠标事件被触发时,依次获取具有被触发鼠标事件的下层HTML元素,并根据其鼠标事件触发条件对下层HTML元素执行相应的操作。
依据本发明的第二个方面,本发明提出了一种触发重叠HTML元素鼠标事件的装置,包括:
记录单元,用于记录重叠的HTML元素及其鼠标事件;
添加单元,用于对记录单元记录的每个HTML元素添加鼠标事件触发条件;
添加单元用于给位于最上层的HTML元素添加所有鼠标事件;
处理单元,用于当最上层的HTML元素中有鼠标事件被触发时,依次获取具有被触发鼠标事件的下层HTML元素,并根据其鼠标事件触发条件对下层HTML元素执行相应的操作。
借由上述技术方案,本发明实施例提供的触发重叠HTML元素鼠标事件的方法及装置,能够记录重叠的HTML元素及其鼠标事件;对每个所述HTML元素添加鼠标事件触发条件;给位于最上层的HTML元素添加所有鼠标事件;当所述最上层的HTML元素中有鼠标事件被触发时,依次获取具有被触发鼠标事件的下层HTML元素,并根据其鼠标事件触发条件对所述下层HTML元素执行相应的操作。与现有技术中当HTML元素位置重叠时,浏览器只会触发z-index属性值最大的HTML元素的鼠标事件而忽略其他HTML元素的缺陷相比,本发明能够使得鼠标事件在z-index属性值最大的HTML元素上触发时,只需获取事件名称,查询需要触发相同事件的下层HTML元素,并根据记录的鼠标事件触发条件对下层HTML元素执行相应的操作,整个过程自动进行。由此,可以在使用绝对定位的HTML元素位置重叠时,可根据条件任意触发这些HTML元素上的鼠标事件。
上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式。
附图说明
通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本发明的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:
图1示出了本发明实施例提供的一种触发重叠HTML元素鼠标事件的方法的流程图;
图2示出了本发明实施例提供的一种触发重叠HTML元素鼠标事件的装置的组成框图;
图3示出了本发明实施例提供的另一种触发重叠HTML元素鼠标事件的装置的组成框图。
具体实施方式
下面将参照附图更加详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。
在现有使用绝对定位的HTML元素的位置相互重叠时,浏览器只会触发z-index属性值最大的HTML元素的鼠标事件而忽略其他HTML元素,但是在很多场景下,存在根据实际情况触发各个HTML元素的鼠标事件的需求。
为了解决在多个绝对定位的HTML元素相互重叠时无法根据实际条件触发各个HTML元素的鼠标事件的问题,本发明实施例提供了一种触发重叠HTML元素鼠标事件的方法,如图1所示,该方法包括:
101、记录重叠的HTML元素及其鼠标事件。
当多个绝对定位的HTML元素相互重叠时,由于每个HTML元素都具有各自的鼠标事件,这些鼠标事件通常包括:click(单击鼠标左键时发生)、dbclick(双击鼠标左键时发生)、mousedown(按下任一个鼠标按键时发生)、mouseup(松开一个鼠标按键时发生)等,为了后续能够区分重叠的各个HTML元素对应的鼠标事件并对其进行相应条件的触发,本发明实施例需要执行步骤101记录重叠的HTML元素及其鼠标事件,即将各个HTML元素和其鼠标事件进行相互关联或对应。
102、对每个HTML元素添加鼠标事件触发条件。
当在步骤101中记录了每个HTML元素及其对应的鼠标事件后,针对一个HTML元素而言,触发其鼠标事件的发生还需要满足一定的条件,若对该HTML元素而言没有达到触发条件,则相应的鼠标事件无法发生。例如,以鼠标事件为onMouseOver的一个HTML元素为例,只有在鼠标移动到该HTML元素范围的上方时才会触发该事件。因此,本发明实施例需要执行步骤102对每个HTML元素添加鼠标事件触发条件。
103、给位于最上层的HTML元素添加所有鼠标事件。
由于多个HTML元素相互重叠时,浏览器只会触发位于最上层的HTML元素的鼠标事件,若最上层的HTML元素只具有其自身的鼠标事件时,则浏览器只会触发该最上层HTML元素自身的鼠标事件。而本发明实施例是为了根据条件在相互重叠的HTML元素中触发各个HTML元素的鼠标事件,基于浏览器只会触发最上层HTML元素的鼠标事件的情况,因此本发明实施例可以执行步骤103给位于最上层的HTML元素添加所有鼠标事件,也就是在最上层的HTML元素中添加位于下层的各个HTML元素的鼠标事件,使得浏览器在最上层HTML元素中能够触发下层HTML元素的鼠标事件。
104、当最上层的HTML元素中有鼠标事件被触发时,依次获取具有被触发鼠标事件的下层HTML元素,并根据其鼠标事件触发条件对下层HTML元素执行相应的操作。
当在步骤103中给位于最上层的HTML元素添加所有鼠标事件之后,由于最上层的HTML元素中具有包含下层HTML元素鼠标事件在内的各个鼠标事件,因此当最上层的HTML元素中有鼠标事件被触发时,该触发的鼠标事件可以为最上层的HTML元素自身的鼠标事件,也可以为下层HTML元素的鼠标事件,本发明实施例还需要在步骤104中当最上层的HTML元素中有鼠标事件被触发时,依次获取具有被触发鼠标事件的下层HTML元素,并根据具有被触发鼠标事件的下层HTML元素自身的鼠标事件触发条件对所述下层HTML元素执行相应的操作。
本发明实施例提供的一种触发重叠HTML元素鼠标事件的方法,能够记录重叠的HTML元素及其鼠标事件;对每个所述HTML元素添加鼠标事件触发条件;给位于最上层的HTML元素添加所有鼠标事件;当所述最上层的HTML元素中有鼠标事件被触发时,依次获取具有被触发鼠标事件的下层HTML元素,并根据其鼠标事件触发条件对所述下层HTML元素执行相应的操作。与现有技术中当HTML元素位置重叠时,浏览器只会触发z-index属性值最大的HTML元素的鼠标事件而忽略其他HTML元素的缺陷相比,本发明能够使得鼠标事件在z-index属性值最大的HTML元素上触发时,只需获取事件名称,查询需要触发相同事件的下层HTML元素,并根据记录的鼠标事件触发条件对下层HTML元素执行相应的操作,整个过程自动进行。由此,可以在使用绝对定位的HTML元素位置重叠时,可根据条件任意触发这些HTML元素上的鼠标事件。
为了更好的对上述图1所示的方法进行理解,本发明实施例将针对图1中的各步骤进行详细说明。
在多个HTML元素相互重叠的情况下,为了便于记录重叠的HTML元素及其鼠标事件,本发明实施例可以使用一个对象数组记录重叠的各个HTML元素,数组里的每个HTML元素都可以看作为对象。具体的,需要定义数组中每个HTML元素的鼠标事件及该鼠标事件的回调函数,其中鼠标事件的回调函数为针对特定的鼠标事件定义的一个回调函数,该鼠标事件回调函数不关心是哪个主体进行调用函数的操作,只是在鼠标事件满足特定的条件或当特定的事件发生的时候,该鼠标事件回调函数会执行相应的操作。当在对象数组中定义了每个HTML元素的鼠标事件及鼠标事件回调函数后,需要同时记录每个HTML元素的鼠标事件名称和鼠标事件回调函数。例如,在本发明实施例中,可以使用对象数组记录这些位置重叠的HTML元素,给每个HTML元素添加所需的鼠标事件,记录对象数组中每个HTML元素的下列属性:对HTML元素引用的element属性、鼠标事件名称name属性、鼠标事件回调函数fun属性。
当通过对象数组记录了每个HTML元素的鼠标事件及其鼠标事件回调函数后,在该对象数组的基础上,本发明实施例还需要对对象数组中的每个HTML元素进行扩充,即为每个HTML元素添加鼠标事件触发条件,也就是需要向鼠标事件添加条件逻辑,只有当满足鼠标事件触发条件后,浏览器才能响应该鼠标事件并执行相应的操作。具体的,本发明实施例可以自定义每个HTML元素的条件属性,该条件属性的属性值可以为一个条件函数,所述条件函数的返回值代表满足条件与否的情况。例如,本发明实施例可以为每个HTML元素添加condition属性,此函数返回值是true或false,返回true代表满足鼠标事件触发条件,返回false代表不满足鼠标事件触发条件。
由于在HTML页面布局中,可以使用绝对定位准确确定HTML元素的位置,当多个HTML元素都使用绝对定位时,位置会发生重叠,内容会相互遮挡,而浏览器只会触发最上层的HTML元素的鼠标事件。因此,当通过上述方式为每个HTML元素添加了鼠标事件、鼠标事件触发条件及鼠标事件回调函数后,本发明还需要获取位于最上层的HTML元素。由于HTML元素的置顶顺序可以通过z-index属性进行控制,HTML元素的z-index属性值越大,该HTML元素越靠前。当鼠标点击或移动到这些位置重叠的HTML元素上时,浏览器只会触发z-index属性值最大的HTML元素的鼠标事件,而不会触发其他HTML元素的鼠标事件。因此,本发明实施例首先需要读取各个HTML元素的z-index属性,找到z-index属性值最大的HTML元素,从而获取位于最上层的HTML元素。
由于浏览器会响应位于最上层的HTML元素的鼠标事件而忽略其他HTML元素,因此本发明实施例需要给最上层的HTML元素添加所有鼠标事件,即给最上层的HTML元素添加各个下层HTML元素的鼠标事件,从而使浏览器在响应最上层的HTML元素的鼠标事件时会响应到其他HTML元素的鼠标事件。
当在最上层的HTML元素中添加了各个HTML元素的鼠标事件后,若最上层的HTML元素中有一个鼠标事件触发时,可以根据该被触发的鼠标事件名称从先前建立的对象数组中查找与该被触发的鼠标事件名称相同的鼠标事件所属的HTML元素,并读取该HTML元素上的鼠标事件触发条件即condition属性,调用执行condition属性指向的函数,若condition属性的返回值为true,则获取该HTML元素上的鼠标事件回调函数即该HTML元素记录的fun属性,并执行fun属性上的回调函数,从而使浏览器能够对位于下层的该HTML元素进行响应;若condition属性的返回值为false,则浏览器不会对该HTML元素进行响应。
按照上述过程,在对象数组中依次寻找与最上层HTML元素中被触发的鼠标事件名称相同的鼠标事件所属的HTML元素,并执行其鼠标事件触发条件的条件函数,根据条件函数的返回值来判定是否需要执行相应的鼠标事件回调函数,若需要则调用鼠标事件回调函数使浏览器对该HTML元素进行响应;若不需要则不会调用鼠标事件回调函数,浏览器也不会对该HTML元素进行响应。
由于各个HTML元素中的鼠标事件触发条件的条件函数可以根据业务场景灵活定义,因此本发明实施例可以根据业务场景自定义各个HTML元素的鼠标事件触发条件,使得浏览器在z-index属性值最大的HTML元素上触发鼠标事件时,只需获取被触发的鼠标事件名称,查询需要触发相同鼠标事件的HTML元素,并根据自定义的鼠标事件触发条件的条件函数的返回值来调用鼠标事件回调函数,整个过程自动进行。编写程序时,只需定义HTML元素上的鼠标事件名称、鼠标事件触发条件的条件函数、鼠标事件回调函数即可使浏览器能够在最上层HTML元素中完成对下层各个HTML元素的鼠标事件进行自动触发的操作。
进一步的,作为对上述图1所示方法的应用,本发明实施例还提供了一种触发重叠HTML元素鼠标事件的装置,如图2所示,该装置包括:记录单元21、添加单元22及处理单元23,其中,
记录单元21,用于记录重叠的HTML元素及其鼠标事件;
添加单元22,用于对记录单元21记录的每个HTML元素添加鼠标事件触发条件;
添加单元22还用于给位于最上层的HTML元素添加所有鼠标事件;
处理单元23,用于当最上层的HTML元素中有鼠标事件被触发时,依次获取具有被触发鼠标事件的下层HTML元素,并根据其鼠标事件触发条件对下层HTML元素执行相应的操作。
进一步的,记录单元21用于使用对象数组记录重叠的HTML元素,给每个HTML元素添加所需的鼠标事件,并记录HTML元素的鼠标事件名称和鼠标事件回调函数。
进一步的,添加单元22用于自定义每个HTML元素的条件属性,条件属性的属性值为一个条件函数,条件函数的返回值代表满足条件与否的情况。
进一步的,如图3所示,添加单元22包括:
获取模块221,用于获取HTML元素的z-index属性值并根据z-index属性值获取最上层的HTML元素;
添加模块222,用于给获取模块221获取的最上层的HTML元素添加所有下层HTML元素的鼠标事件。
进一步的,处理单元23包括:
确定模块231,用于根据下层HTML元素中记录的鼠标事件名称在下层HTML元素中确定与最上层的HTML元素中被触发鼠标事件的鼠标事件名称相同的目标HTML元素,并获取目标HTML元素的鼠标事件触发条件的条件属性;
判断模块232,用于根据条件属性的值判断是否需要调用目标HTML元素的鼠标事件回调函数;
调用模块233,用于当判断结果为是时,调用目标HTML元素的鼠标事件回调函数触发目标HTML元素的鼠标事件。
本发明实施例提供的一种触发重叠HTML元素鼠标事件的装置,能够记录重叠的HTML元素及其鼠标事件;对每个所述HTML元素添加鼠标事件触发条件;给位于最上层的HTML元素添加所有鼠标事件;当所述最上层的HTML元素中有鼠标事件被触发时,依次获取具有被触发鼠标事件的下层HTML元素,并根据其鼠标事件触发条件对所述下层HTML元素执行相应的操作。与现有技术中当HTML元素位置重叠时,浏览器只会触发z-index属性值最大的HTML元素的鼠标事件而忽略其他HTML元素的缺陷相比,本发明能够使得鼠标事件在z-index属性值最大的HTML元素上触发时,只需获取事件名称,查询需要触发相同事件的下层HTML元素,并根据记录的鼠标事件触发条件对下层HTML元素执行相应的操作,整个过程自动进行。由此,可以在使用绝对定位的HTML元素位置重叠时,可根据条件任意触发这些HTML元素上的鼠标事件。
此外,本发明实施例可以根据业务场景自定义各个HTML元素的鼠标事件触发条件,使得浏览器在z-index属性值最大的HTML元素上触发鼠标事件时,只需获取被触发的鼠标事件名称,查询需要触发相同鼠标事件的HTML元素,并根据自定义的鼠标事件触发条件的条件函数的返回值来调用鼠标事件回调函数,整个过程自动进行。编写程序时,只需定义HTML元素上的鼠标事件名称、鼠标事件触发条件的条件函数、鼠标事件回调函数即可使浏览器能够在最上层HTML元素中完成对下层各个HTML元素的鼠标事件进行自动触发的操作。
所述触发重叠HTML元素鼠标事件的装置包括处理器和存储器,上述记录单元21、添加单元22及处理单元23均作为程序单元存储在存储器中,由处理器执行存储在存储器中的上述程序单元来实现相应的功能。
处理器中包含内核,由内核去存储器中调取相应的程序单元。内核可以设置一个或以上,通过调整内核参数来实现在多个绝对定位的HTML元素重叠时能够根据实际条件触发各个HTML元素的鼠标事件的目的。
存储器可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM),存储器包括至少一个存储芯片。
本申请还提供了一种计算机程序产品,当在数据处理设备上执行时,适于执行初始化有如下方法步骤的程序代码:记录重叠的HTML元素及其鼠标事件;对每个HTML元素添加鼠标事件触发条件;给位于最上层的HTML元素添加所有鼠标事件;当最上层的HTML元素中有鼠标事件被触发时,依次获取具有被触发鼠标事件的下层HTML元素,并根据其鼠标事件触发条件对下层HTML元素执行相应的操作。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
在一个典型的配置中,计算设备包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。
存储器可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。存储器是计算机可读介质的示例。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
以上仅为本申请的实施例而已,并不用于限制本申请。对于本领域技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本申请的权利要求范围之内。
Claims (12)
1.一种触发重叠HTML元素鼠标事件的方法,其特征在于,所述方法包括:
记录重叠的HTML元素及其鼠标事件;
对每个所述HTML元素添加鼠标事件触发条件;
给位于最上层的HTML元素添加所有鼠标事件;
当所述最上层的HTML元素中有鼠标事件被触发时,依次获取具有被触发鼠标事件的下层HTML元素,并根据其鼠标事件触发条件对所述下层HTML元素执行相应的操作。
2.根据权利要求1所述的方法,其特征在于,所述记录重叠的HTML元素及其鼠标事件,包括:
使用对象数组记录重叠的HTML元素;
给每个所述HTML元素添加所需的鼠标事件;
记录所述HTML元素的鼠标事件名称和鼠标事件回调函数。
3.根据权利要求2所述的方法,其特征在于,所述对每个所述HTML元素添加鼠标事件触发条件,包括:
自定义每个所述HTML元素的条件属性,所述条件属性的属性值为一个条件函数,所述条件函数的返回值代表满足条件与否的情况。
4.根据权利要求1所述的方法,其特征在于,所述给位于最上层的HTML元素添加所有鼠标事件,包括:
根据z-index属性值获取最上层的HTML元素;
给所述最上层的HTML元素添加所有下层HTML元素的鼠标事件。
5.根据权利要求3所述的方法,其特征在于,所述当所述最上层的HTML元素中有鼠标事件被触发时,依次获取具有被触发鼠标事件的下层HTML元素,并根据其鼠标事件触发条件对所述下层HTML元素执行相应的操作,包括:
根据下层HTML元素中记录的鼠标事件名称在所述下层HTML元素中确定与所述最上层的HTML元素中被触发鼠标事件的鼠标事件名称相同的目标HTML元素;
获取所述目标HTML元素的鼠标事件触发条件的条件属性;
根据所述条件属性的值判断是否需要调用所述目标HTML元素的鼠标事件回调函数;
若判断结果为是,则调用所述目标HTML元素的鼠标事件回调函数触发所述目标HTML元素的鼠标事件。
6.一种触发重叠HTML元素鼠标事件的装置,其特征在于,所述装置包括:
记录单元,用于记录重叠的HTML元素及其鼠标事件;
添加单元,用于对记录单元记录的每个所述HTML元素添加鼠标事件触发条件;
所述添加单元用于给位于最上层的HTML元素添加所有鼠标事件;
处理单元,用于当所述最上层的HTML元素中有鼠标事件被触发时,依次获取具有被触发鼠标事件的下层HTML元素,并根据其鼠标事件触发条件对所述下层HTML元素执行相应的操作。
7.根据权利要求6所述的装置,其特征在于,所述记录单元用于使用对象数组记录重叠的HTML元素,给每个所述HTML元素添加所需的鼠标事件,并记录所述HTML元素的鼠标事件名称和鼠标事件回调函数。
8.根据权利要求7所述的装置,其特征在于,所述添加单元用于自定义每个所述HTML元素的条件属性,所述条件属性的属性值为一个条件函数,所述条件函数的返回值代表满足条件与否的情况。
9.根据权利要求6所述的装置,其特征在于,所述添加单元包括:
获取模块,用于获取HTML元素的z-index属性值并根据z-index属性值获取最上层的HTML元素;
添加模块,用于给所述获取模块获取的所述最上层的HTML元素添加所有下层HTML元素的鼠标事件。
10.根据权利要求8所述的装置,其特征在于,所述处理单元包括:
确定模块,用于根据下层HTML元素中记录的鼠标事件名称在所述下层HTML元素中确定与所述最上层的HTML元素中被触发鼠标事件的鼠标事件名称相同的目标HTML元素,并获取所述目标HTML元素的鼠标事件触发条件的条件属性;
判断模块,用于根据所述条件属性的值判断是否需要调用所述目标HTML元素的鼠标事件回调函数;
调用模块,用于当判断结果为是时,调用所述目标HTML元素的鼠标事件回调函数触发所述目标HTML元素的鼠标事件。
11.一种存储介质,其特征在于,所述存储介质包括存储的程序,其中,在所述程序运行时控制所述存储介质所在设备执行权利要求1至权利要求5中任意一项所述的一种触发重叠HTML元素鼠标事件的方法。
12.一种处理器,其特征在于,所述处理器用于运行程序,其中,所述程序运行时执行权利要求1至权利要求5中任意一项所述的一种触发重叠HTML元素鼠标事件的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510708633.2A CN106610833B (zh) | 2015-10-27 | 2015-10-27 | 一种触发重叠html元素鼠标事件的方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510708633.2A CN106610833B (zh) | 2015-10-27 | 2015-10-27 | 一种触发重叠html元素鼠标事件的方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106610833A CN106610833A (zh) | 2017-05-03 |
CN106610833B true CN106610833B (zh) | 2020-02-04 |
Family
ID=58614336
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510708633.2A Expired - Fee Related CN106610833B (zh) | 2015-10-27 | 2015-10-27 | 一种触发重叠html元素鼠标事件的方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106610833B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108304242A (zh) * | 2018-02-05 | 2018-07-20 | 武汉斗鱼网络科技有限公司 | 实现鼠标事件穿透的方法、相关存储介质、设备和装置 |
CN108647066B (zh) * | 2018-03-23 | 2021-08-20 | 深圳航天智慧城市系统技术研究院有限公司 | 在浏览器中弹出html页面遮盖citymaker三维引擎的方法 |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CA2686995A1 (en) * | 2009-12-03 | 2011-06-03 | Ibm Canada Limited - Ibm Canada Limitee | Handling user-interface gestures in non-rectangular regions |
KR20120037858A (ko) * | 2010-10-12 | 2012-04-20 | 삼성전자주식회사 | 입체영상표시장치 및 그 ui 제공 방법 |
CN103425388B (zh) * | 2012-05-24 | 2017-03-15 | 腾讯科技(深圳)有限公司 | 一种操作html页面宿主窗口的方法和装置 |
CN103473242B (zh) * | 2012-06-08 | 2016-03-02 | 腾讯科技(深圳)有限公司 | 一种基于网页内容的手写输入控制方法、系统及浏览器 |
CN103135892A (zh) * | 2013-03-04 | 2013-06-05 | 无锡德思普科技有限公司 | 一种图形用户界面的控件管理方法 |
CN104881478B (zh) * | 2015-06-02 | 2019-06-21 | 吴小宇 | 一种网页页面定位识别系统及定位识别方法 |
-
2015
- 2015-10-27 CN CN201510708633.2A patent/CN106610833B/zh not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
CN106610833A (zh) | 2017-05-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108089856B (zh) | 一种页面元素的监听方法及装置 | |
CN109542789B (zh) | 一种代码覆盖率统计方法及装置 | |
CN106610774B (zh) | 网页表格编辑方法及装置 | |
CN106933887B (zh) | 一种数据可视化方法及装置 | |
CN110020339B (zh) | 基于无埋点的网页数据采集方法及装置 | |
CN106997316B (zh) | 内存异常增长的检测系统及方法 | |
CN107015986B (zh) | 一种爬虫爬取网页的方法及装置 | |
CN109857964B (zh) | 一种页面操作的热力图绘制方法、装置、存储介质及处理器 | |
CN106610833B (zh) | 一种触发重叠html元素鼠标事件的方法及装置 | |
CN113641526A (zh) | 告警根因定位方法、装置、电子设备及计算机存储介质 | |
CN110955846A (zh) | 传播路径图生成方法及装置 | |
CN106648567B (zh) | 数据获取方法及装置 | |
CN109558548A (zh) | 一种消除css样式冗余的方法及相关产品 | |
CN106817355B (zh) | 网页权限的控制方法及装置 | |
CN112560403A (zh) | 文本的处理方法及装置、电子设备 | |
CN112579066A (zh) | 图表展示方法、装置、存储介质及设备 | |
CN110020332B (zh) | 一种基于圈选元素的事件生成方法及装置 | |
CN110889051A (zh) | 一种页面超链接检测方法、装置及设备 | |
CN110955813A (zh) | 一种数据爬取方法及装置 | |
CN113485746B (zh) | 应用程序接口文档的生成方法及装置 | |
CN107818000B (zh) | 一种页面表格的操作方法及装置 | |
CN110969461B (zh) | 公众号信息的处理方法及装置、存储介质、处理器 | |
CN110908876B (zh) | 一种硬件性能数据的获取方法及装置 | |
CN110968754B (zh) | 一种爬虫翻页策略的检测方法及装置 | |
CN108270834B (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 | ||
CB02 | Change of applicant information |
Address after: 100083 No. 401, 4th Floor, Haitai Building, 229 North Fourth Ring Road, Haidian District, Beijing Applicant after: BEIJING GRIDSUM TECHNOLOGY Co.,Ltd. Address before: 100086 Cuigong Hotel, 76 Zhichun Road, Shuangyushu District, Haidian District, Beijing Applicant before: BEIJING GRIDSUM TECHNOLOGY Co.,Ltd. |
|
GR01 | Patent grant | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20200204 |