点击事件拦截方法和系统与流程

文档序号:37154438发布日期:2024-02-26 17:13阅读:18来源:国知局
点击事件拦截方法和系统与流程

本技术涉及信息处理,尤其涉及一种点击事件拦截方法和系统。


背景技术:

1、点击事件是指在app(application,应用程序)的使用过程中,用户通过触发某个页面中的相应控件或者相应链接等以期跳转至其它页面的用户事件。在实际应用中,为了优化app功能等需求,通常需要对点击事件进行拦截,以统计执行所述点击事件而生成的相关数据,或者通过对点击事件进行拦截,可以控制跳转至指定页面,而非点击事件链接的页面。

2、对点击事件进行拦截之前,需要先判断点击的页面元素是否为需要拦截的元素,如果是则进行拦截,如果不是则不进行拦截。

3、然而,相关技术中,通过从目标元素的父元素开始遍历父元素的所有子元素的方式,来对目标元素进行定位和判断,在父元素下的子元素多的情况下,判断时间很长,导致拦截时间长,拦截速率低,且容易出现误点击不能被成功拦截的情况。


技术实现思路

1、本技术实施例的主要目的在于提出一种点击事件拦截方法和系统。旨在通过获取点击元素对应的标识数组并判断标识数组是否属于预先存储的拦截数组,来对点击事件进行有效拦截,可提高拦截速率,降低发生错误点击的概率。

2、为实现上述目的,本技术实施例的第一方面提出了一种点击事件拦截方法,所述方法包括:

3、响应于点击操作生成的点击事件,确定所述点击事件中对应的点击元素;

4、从预先存储的元素唯一路径集中获取得到所述点击元素的唯一路径,并基于所述点击元素的唯一路径生成用于标识所述点击元素的元素标识数组;

5、获取所述点击元素的所属页面的活动单元,并基于所述点击元素的所属页面的活动单元的活动状态生成用于标识所述点击元素的所属页面的页面标识数组;

6、将所述元素标识数组和所述页面标识数组相乘得到所述点击元素对应的标识数组,并判断所述标识数组是否属于预先存储的拦截数组;

7、当所述标识数组属于预设存储的所述拦截数组,则将拦截所述点击事件,反之则不拦截所述点击事件。

8、在本技术的一个实施例中,所述元素唯一路径集通过以下步骤获取:

9、在将页面中的子元素添加到父元素进行渲染的过程中,建立用于标识所述子元素在所述父元素下的所属位置的索引值;

10、在生成所述子元素的唯一路径中添加所述子元素在所述父元素下的所属位置的索引值;

11、获取各个页面中各个元素的唯一路径,构成得到元素唯一路径集。

12、在本技术的一个实施例中,基于所述点击元素的唯一路径生成用于标识所述点击元素的元素标识数组包括:

13、对所述点击元素的唯一路径进行逐级分割,得到各级路径值;

14、生成用于标识各级所述路径值的id值;

15、将用于标识各级所述路径值的id值转换为预设位数的横向一维数组,得到所述点击元素的元素标识数组。

16、在本技术的一个实施例中,所述生成用于标识各级所述路径值的id值,包括:

17、对各级所述路径值进行处理,保留所述路径值中的英文和数字;

18、对处理后的各级所述路径值,计算其对应的美国信息交换标准代码;

19、根据所述美国信息交换标准代码计算得到各级所述路径值对应的id值。

20、在本技术的一个实施例中,对所述点击元素的唯一路径进行逐级分割,得到各级路径值之后,所述方法还包括:

21、根据对所述点击元素的唯一路径的逐级分割,确定所述点击元素的唯一路径的级别数量;

22、判断所述点击元素的唯一路径的级别数量是否大于预设级别数量;

23、当所述点击元素的唯一路径的级别数量大于所述预设级别数量,取排列在后的所述预设级别数量的路径值所对应的id值;

24、当所述点击元素的唯一路径的级别数量小于所述预设级别数量,在每一级路径值对应的id值向前补0,以使得存在相应预设级别数量的id值。

25、在本技术的一个实施例中,所述将用于标识各级所述路径值的id值转换为预设位数的横向一维数组,得到所述点击元素的元素标识数组,包括:

26、确定横向一维数组的预设位数;

27、将每一级路径值对应的id值设置为对应在所述横向一维数组中相应排列位数的数值为1,以构建得到所述横向一维数组。

28、在本技术的一个实施例中,基于所述点击元素的所属页面的活动单元的活动状态生成用于标识所述点击元素的所属页面的页面标识数组,包括:

29、基于所述点击元素的所属页面的活动单元的活动状态,生成所述活动状态对应的id值;

30、将所述活动状态对应的id值转换为所述预设位数的纵向一维数组,得到所述点击元素的所属页面的页面标识数组。

31、在本技术的一个实施例中,所述活动状态对应的id值的数量与所述用于标识各级所述路径值的id值的数量相同。

32、在本技术的一个实施例中,所述拦截数组通过以下步骤获取:

33、确定所有待拦截元素,并从预先存储的元素唯一路径集中获取每一个所述待拦截元素的唯一路径;

34、基于每一个所述待拦截元素的唯一路径生成用于标识每一个所述待拦截元素的元素标识数组;

35、集合用于标识每一个所述待拦截元素的元素标识数组,得到拦截元素数组;

36、获取每一个所述待拦截元素的所属页面的活动单元,并基于每一个所述待拦截元素的所属页面的活动单元的活动状态生成用于标识每一个所述待拦截元素的所属页面的页面标识数组;

37、集合用于标识每一个所述待拦截元素的所属页面的页面标识数组,得到拦截页面数组;

38、将所述拦截元素数组和所述拦截页面数组相乘,得到拦截数组。

39、为实现上述目的,本技术实施例的第二方面提出了一种点击事件拦截系统,包括:

40、元素定位模块,用于执行以下操作:

41、响应于点击操作生成的点击事件,确定所述点击事件中对应的点击元素;

42、从预先存储的元素唯一路径集中获取得到所述点击元素的唯一路径,并基于所述点击元素的唯一路径生成用于标识所述点击元素的元素标识数组;

43、获取所述点击元素的所属页面的活动单元,并基于所述点击元素的所属页面的活动单元的活动状态生成用于标识所述点击元素的所属页面的页面标识数组;

44、将所述元素标识数组和所述页面标识数组相乘得到所述点击元素对应的标识数组;

45、拦截控制模块,用于执行以下操作:

46、判断所述标识数组是否属于预先存储的拦截数组;

47、当所述标识数组属于预设存储的所述拦截数组,则将拦截所述点击事件,反之则不拦截所述点击事件;

48、拦截配置模块,用于将所述元素唯一路径集和所述拦截数组进行配置。

49、在本技术实施例提供的技术方案中,响应于点击操作生成的点击事件,可确定点击事件中对应的点击元素,由此可进一步从预先存储的元素唯一路径集中获取得到点击元素的唯一路径,从而可基于点击元素的唯一路径生成用于标识点击元素的元素标识数组。再获取点击元素的所属页面的活动单元,并基于点击元素的所属页面的活动单元的活动状态生成用于标识点击元素的所属页面的页面标识数组;从而可将元素标识数组和页面标识数组相乘得到点击元素对应的标识数组。再通过判断标识数组是否属于预先存储的拦截数组,来对点击事件进行有效拦截,可提高拦截速率,降低发生错误点击的概率。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1