一种事件调用方法及装置制造方法及图纸

技术编号:11049293 阅读:82 留言:0更新日期:2015-02-18 14:32
本申请公开了一种事件调用方法及装置,方法包括:在检测到web页面上的文档对象模型被触发时,确定对应的调用事件,查询所述调用事件在当前浏览器下对应的代理函数,利用查询到的所述代理函数执行预存在缓存区中与所述调用事件对应的实际函数。本申请预先存储了不同的调用事件在不同的浏览器下对应的代理函数,代理函数所执行的是预存的与调用事件对应的实际函数,实现了在不同浏览器中事件的正常调用。

【技术实现步骤摘要】

本申请涉及软件
,更具体地说,涉及一种事件调用方法及装置
技术介绍
随着浏览器不断的发展,各大软件公司也都推出了不同内核的浏览器,来瓜分浏览器市场。目前,市面上主流的浏览器包括IE、Firefox等,而不同内核的不同浏览器对事件的处理方法不同,这给前端web页面开发带来了非常大的困扰。以最常用的绑定事件为例,IE浏览器提供的是attachEvent以及detachEvent绑定方法,而firefox、chrome等gecko以及webkit内核的浏览器提供的是addEventListener和removeEventListener绑定方法。
技术实现思路
有鉴于此,本申请提供了一种事件调用方法,用于解决web页面应用不能够适用于不同内核的浏览器的问题。为了实现上述目的,现提出的方案如下:一种事件调用方法,包括:在检测到web页面上的文档对象模型被触发时,确定对应的调用事件;查询所述调用事件在当前浏览器下对应的代理函数;利用查询到的所述代理函数执行预存在缓存区中与所述调用事件对应的实际函数。优选地,所述在检测到web页面上的文档对象模型被触发时,确定对应的调用事件,包括:确定所述文档对象模型被触发的类型,并确定与该类型的触发操作对应的调用事件。优选地,所述查询所述调用事件在当前浏览器下对应的代理函数,包括:确定当前浏览器的型号;在当前型号的浏览器下,查询与所述调用事件对应的代理函数。优选地,在所述与所述调用事件对应的实际函数的个数为多个时,所述利用查询到的所述代理函数执行预存在缓存区中与所述调用事件对应的实际函数,包括:按照与所述调用事件对应的多个实际函数存储至所述缓存区的先后顺序,依次执行所述实际函数。优选地,还包括:为用户指定的文档对象模型添加指定的调用事件,包括:将与所述指定的调用事件对应的实际函数进行代理包装,确定当前型号的浏览器下的代理函数及包装后的实际函数;将包装后的实际函数存储至缓存区;将确定的代理函数与所述指定的调用事件进行关联。一种事件调用装置,包括:事件确定单元,用于在检测到web页面上的文档对象模型被触发时,确定对应的调用事件;代理函数确定单元,用于查询所述调用事件在当前浏览器下对应的代理函数;代理函数执行单元,用于利用查询到的所述代理函数执行预存在缓存区中与所述调用事件对应的实际函数。优选地,所述事件确定单元包括:第一事件确定子单元,用于确定所述文档对象模型被触发的类型,并确定与该类型的触发操作对应的调用事件。优选地,所述代理函数确定单元包括:浏览器确定单元,用于确定当前浏览器的型号;代理函数查询单元,用于在当前型号的浏览器下,查询与所述调用事件对应的代理函数。优选地,所述代理函数执行单元包括:第一代理函数执行子单元,用于在所述与所述调用事件对应的实际函数的个数为多个时,按照与所述调用事件对应的多个实际函数存储至所述缓存区的先后顺序,依次执行所述实际函数。优选地,还包括:事件添加单元,用于为用户指定的文档对象模型添加指定的调用事件,该过程包括:将与所述指定的调用事件对应的实际函数进行代理包装,确定当前型号的浏览器下的代理函数及包装后的实际函数;将包装后的实际函数存储至缓存区;将确定的代理函数与所述指定的调用事件进行关联。从上述的技术方案可以看出,本申请实施例提供的事件调用方法,在检测到web页面上的文档对象模型被触发时,确定对应的调用事件,查询所述调用事件在当前浏览器下对应的代理函数,利用查询到的所述代理函数执行预存在缓存区中与所述调用事件对应的实际函数。本申请预先存储了不同的调用事件在不同的浏览器下对应的代理函数,代理函数所执行的是预存的与调用事件对应的实际函数,实现了在不同浏览器中事件的正常调用。附图说明为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。图1为本申请实施例公开的一种事件调用方法流程图;图2为本申请实施例公开的一种事件调用装置结构示意图;图3为本申请实施例公开的一种事件确定单元结构示意图;图4为本申请实施例公开的一种代理函数确定单元结构示意图;图5为本申请实施例公开的一种代理函数执行单元结构示意图。具体实施方式下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。参见图1,图1为本申请实施例公开的一种事件调用方法流程图。如图1所示,该方法包括:步骤S100、在检测到web页面上的文档对象模型被触发时,确定对应的调用事件;具体地,不同的触发操作对应不同的调用事件,例如单击、双击、右击等等。根据文档对象模型被触发的类型,确定对应的调用事件。步骤S110、查询所述调用事件在当前浏览器下对应的代理函数;不同的浏览器下,相同的调用事件会对应不同的代理函数。或者说,一个调用事件在不同的浏览器下其对应的代理函数是不同的。代理函数在执行过程中会执行其下对应的实际函数。步骤S120、利用查询到的所述代理函数执行预存在缓存区中与所述调用事件对应的实际函数。具体地,我们事先定义一个缓存区,在其中存储每一个文档对象模型对应的事件,各事件在不同浏览器下对应的代理函数,以及各个代理函数需要执行的实际函数。本申请实施例提供的事件调用方法,在检测到web页面上的文档对象模型被触发时,确定对应的调用事件,查询所述调用事件在当前浏览器下对应的代理函数,利用查询到的所述代理函数执行预存在缓存区中与所述调用事件对应的实际函数。本申请预先存储了不同的调用事件在不同的浏览器下对应的代理函数,代理函数所执行的是预存的与调用事件对应的实际函数,实现了在不同浏览器中事件的正常调用。并且,通过本申请的方法,缓存区中事件缓存架构一目了然,对于每个文档对象模型所绑定的事件,以及每个事件对应的不同的代理函数,也可以很方便的进行管理。其中,上述查询所述调用事件在当前浏览器下对本文档来自技高网...

【技术保护点】
一种事件调用方法,其特征在于,包括:在检测到web页面上的文档对象模型被触发时,确定对应的调用事件;查询所述调用事件在当前浏览器下对应的代理函数;利用查询到的所述代理函数执行预存在缓存区中与所述调用事件对应的实际函数。

【技术特征摘要】
1.一种事件调用方法,其特征在于,包括:
在检测到web页面上的文档对象模型被触发时,确定对应的调用事件;
查询所述调用事件在当前浏览器下对应的代理函数;
利用查询到的所述代理函数执行预存在缓存区中与所述调用事件对应的
实际函数。
2.根据权利要求1所述的方法,其特征在于,所述在检测到web页面上
的文档对象模型被触发时,确定对应的调用事件,包括:
确定所述文档对象模型被触发的类型,并确定与该类型的触发操作对应
的调用事件。
3.根据权利要求1所述的方法,其特征在于,所述查询所述调用事件在
当前浏览器下对应的代理函数,包括:
确定当前浏览器的型号;
在当前型号的浏览器下,查询与所述调用事件对应的代理函数。
4.根据权利要求1所述的方法,其特征在于,在所述与所述调用事件对
应的实际函数的个数为多个时,所述利用查询到的所述代理函数执行预存在
缓存区中与所述调用事件对应的实际函数,包括:
按照与所述调用事件对应的多个实际函数存储至所述缓存区的先后顺
序,依次执行所述实际函数。
5.根据权利要求1-4任意一项所述的方法,其特征在于,还包括:
为用户指定的文档对象模型添加指定的调用事件,包括:
将与所述指定的调用事件对应的实际函数进行代理包装,确定当前型号
的浏览器下的代理函数及包装后的实际函数;
将包装后的实际函数存储至缓存区;
将确定的代理函数与所述指定的调用事件进行关联。
6.一种事件调用装置,其特...

【专利技术属性】
技术研发人员:王奔冯东
申请(专利权)人:国家电网公司北京中电普华信息技术有限公司
类型:发明
国别省市:北京;11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1