[发明专利]基于jQuery框架的功能模块动态加载方法和装置有效
申请号: | 201210121210.7 | 申请日: | 2012-04-23 |
公开(公告)号: | CN103377059A | 公开(公告)日: | 2013-10-30 |
发明(设计)人: | 施丹侠 | 申请(专利权)人: | 阿里巴巴集团控股有限公司 |
主分类号: | G06F9/445 | 分类号: | G06F9/445 |
代理公司: | 北京康信知识产权代理有限责任公司 11240 | 代理人: | 吴贵明;江舟 |
地址: | 英属开曼群岛大开*** | 国省代码: | 开曼群岛;KY |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 基于 jquery 框架 功能模块 动态 加载 方法 装置 | ||
技术领域
本申请涉及互联网领域,具体而言,涉及一种基于jQuery框架的功能模块动态加载方法和装置。
背景技术
JQuery作为一种优秀的Javascript框架被广泛使用,目前jQuery框架不支持模块的动态加载功能,当网页需要加载功能模块时,往往需要用户手动加载并刷新来实现。YUI3.X+、Ext4.X+、SeaJS等都可以实现动态加载功能模块,然而,YUI3.X+、Ext4.X+都只能为自己的框架服务而无法移植到其它框架;SeaJS则是需要对源文件进行侵入式的修改,以CommonJS的规范来进行重写;此外,目前上述的YUI3.X+、Ext4.X+、SeaJS这些框架都不支持数据模块的动态加载功能。
针对相关技术中jQuery框架不支持模块的动态加载功能,目前尚未提出有效的解决方案。
发明内容
本申请的主要目的在于提供一种基于jQuery框架的功能模块动态加载方法和装置,以解决相关技术中jQuery框架不支持模块的动态加载功能的问题。
根据本申请的一个方面,提供了一种基于jQuery框架的功能模块动态加载方法,该方法包括:在网页上接收到请求加载功能模块的触发命令;向服务器请求加载功能模块所需的资源文件;在从服务器成功获取到资源文件后,调用与功能模块对应的回调函数来对资源文件进行加载操作,其中,回调函数指示了加载操作。
优选的,调用与功能模块对应的回调函数来对资源文件进行加载操作的步骤包括:在请求加载的功能模块为多个的情况下,判断功能模块之间的依赖关系;按照依赖关系来确定调用回调函数的顺序,其中,每个回调函数对应于一个功能模块;按确定的顺序来加载回调函数。
优选的,按照依赖关系来确定调用回调函数的顺序的步骤包括:按照依赖关系对应的顺序将回调函数缓存到回调函数队列中,其中,被其它回调函数依赖的回调函数先缓存到回调函数队列中,依赖于其它回调函数的回调函数后缓存到回调函数队列中。
优选的,按确定的顺序来加载回调函数的步骤包括:若所请求记载的第一功能模块依赖于所请求记载的第二功能模块,则先调用与第一功能模块对应的回调函数来对加载第一功能模块所需的资源文件进行加载操作,然后调用与第二功能模块对应的回调函数来对加载第二功能模块所需的资源文件进行加载操作。
优选的,在网页上接收到请求加载功能模块的触发命令之前,还包括:为功能模块设置回调函数,其中,回调函数指示了在从服务器成功获取到资源文件后对资源文件所执行的加载操作。
优选的,加载操作包括:初始化操作。
根据本申请的另一方面,提供了一种基于jQuery框架的功能模块动态加载装置,该装置包括:接收单元,用于在网页上接收到请求加载功能模块的触发命令;请求单元,用于向服务器请求加载功能模块所需的资源文件;调用单元,用于在从服务器成功获取到资源文件后,调用与功能模块对应的回调函数来对资源文件进行加载操作,其中,回调函数指示了加载操作。
优选的,调用单元包括:判断模块,用于在请求加载的功能模块为多个的情况下,判断功能模块之间的依赖关系;确定模块,用于按照依赖关系来确定调用回调函数的顺序,其中,每个回调函数对应于一个功能模块;加载模块,用于按确定模块确定的顺序来加载回调函数。
优选的,确定模块包括:缓存子模块,用于按照依赖关系对应的顺序将回调函数缓存到回调函数队列中,其中,被其它回调函数依赖的回调函数先缓存到回调函数队列中,依赖于其它回调函数的回调函数后缓存到回调函数队列中。
优选的,加载模块包括:调用子模块,用于在所请求记载的第一功能模块依赖于所请求记载的第二功能模块时,先调用与第一功能模块对应的回调函数来对加载第一功能模块所需的资源文件进行加载操作,然后调用与第二功能模块对应的回调函数来对加载第二功能模块所需的资源文件进行加载操作。
优选的,该装置还包括:设置单元,用于在网页上接收到请求加载功能模块的触发命令之前为功能模块设置回调函数,其中,回调函数指示了在从服务器成功获取到资源文件后对资源文件所执行的加载操作。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于阿里巴巴集团控股有限公司,未经阿里巴巴集团控股有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201210121210.7/2.html,转载请声明来源钻瓜专利网。