基于jQuery架构javascript基础体系


Posted in Javascript onJanuary 01, 2011

jQuery的使用开始成为javascript开发者的主选产品,但如果没有一个整体的规划,简单的拿来主义势必带来后期维护成本的增加,大量的jQuery插件如同一把双刃剑,一方面大大节省了开发时间与周期,但同时也造成WEB页面加载的负担,带来的难护与二级扩展成本将非常庞大,因此,在使用之前就需要一个最基础的javascript架构体系,能明显基础功能组件,插件组件有效实施与扩展。

我们想,jQuery毕竟还只是一个基础的最底层的工具集,封装元素选择器,事件等等,基本上能满足一般的需求,但要从整体的WEB的周度来看,为了提高javascript开发的效率与可重用性,就需要有一个整体的布局,biuuu认为最简单的思路如下:

1,在现有的ajax接口之上再封装一层操作,主要是用于统一ajax入口,同时可以再细分把GET与POST两种进行分离,通过全局的入口,就能从整理上把关,如过滤参数,检验参数,增加全局参数等,一步到位,可复用性非常高,实现上如下:

var ajax= { 
get : function(){ 
jQuery.get(url, [data], [callback], [type]) 
} 
post : function(){ 
jQuery.post(url, [data], [callback], [type]) 
} 
}

2,封装统一的弹出框,对话框等交互窗口,通过统一接口实现弹窗类操作的交互,节省开发时间,同时有利于整体风格的调整与优化。

3,提供基础的插件加载函数,类似于工厂模式,统一插件加载与调用的入口,对于后期的扩展与维护提供便利,这样就不需要关心插件的更新与升级,只需要调用统一的接口。

4,其实就是一些最基础常用的函数,这个与具体的项目相关,做为全局的工具类。

从上面四点来看,整体的架构思路还只是一个比较浅层次的方案,其实还有安全,性能等方面的考虑,但至少需要有这方面的思路,越是简单就越能体现出架构的合理性,javascript体系也不例外,在实际的使用过程中,通过整合与优化,提高javascript的开发效率与提升javascript能力也就是这样简单。

Javascript 相关文章推荐
多浏览器兼容性比较好的复制到剪贴板的js代码
Oct 09 Javascript
jQuery LigerUI 使用教程入门篇
Jan 18 Javascript
jquery实现兼容浏览器的图片上传本地预览功能
Oct 14 Javascript
node.js中的fs.fchownSync方法使用说明
Dec 16 Javascript
实例解析jQuery插件EasyUI最常用的表单验证规则
Nov 29 Javascript
使用 stylelint检查CSS_StyleLint
Apr 28 Javascript
阻止表单提交按钮多次提交的完美解决方法
May 16 Javascript
JS原型链 详解及示例代码
Sep 06 Javascript
关于List.ToArray()方法的效率测试
Sep 30 Javascript
vue引用js文件的多种方式(推荐)
May 17 Javascript
详解VUE项目中安装和使用vant组件
Apr 28 Javascript
vue.js实现只能输入数字的输入框
Oct 19 Javascript
jQuery技巧总结
Jan 01 #Javascript
js中查找最近的共有祖先元素的实现代码
Dec 30 #Javascript
Js 弹出框口并返回值的两种常用方法
Dec 30 #Javascript
JavaScript之appendChild、insertBefore和insertAfter使用说明
Dec 30 #Javascript
Javascript事件热键兼容ie|firefox
Dec 30 #Javascript
某人初学javascript的时候写的学习笔记
Dec 30 #Javascript
Javascript延迟执行实现方法(setTimeout)
Dec 30 #Javascript
You might like
php 删除记录实现代码
2009/03/12 PHP
使用PHP实现二分查找算法代码分享
2011/06/24 PHP
php同时使用session和cookie来保存用户登录信息的实现代码
2016/05/13 PHP
php实现有序数组打印或排序的方法【附Python、C及Go语言实现代码】
2016/11/10 PHP
PHP实现绘制二叉树图形显示功能详解【包括二叉搜索树、平衡树及红黑树】
2017/11/16 PHP
php 将json格式数据转换成数组的方法
2018/08/21 PHP
javascript事件模型代码
2007/07/01 Javascript
让iframe子窗体取父窗体地址栏参数(querystring)
2009/10/13 Javascript
JS实现鼠标单击与双击事件共存
2014/03/08 Javascript
JS判断浏览器是否安装flash插件的简单方法
2016/09/13 Javascript
详解webpack打包vue时提取css
2017/05/26 Javascript
vue实现密码显示隐藏切换功能
2018/02/23 Javascript
Node.js使用cookie保持登录的方法
2018/05/11 Javascript
react中实现搜索结果中关键词高亮显示
2018/07/31 Javascript
jQuery鼠标滑过横向时间轴样式(代码详解)
2019/11/01 jQuery
Vue.js实现立体计算器
2020/02/22 Javascript
Python中的一些陷阱与技巧小结
2015/07/10 Python
python装饰器与递归算法详解
2016/02/18 Python
利用python微信库itchat实现微信自动回复功能
2017/05/18 Python
python记录程序运行时间的三种方法
2017/07/14 Python
对python中的iter()函数与next()函数详解
2018/10/18 Python
python turtle库画一个方格和圆实例
2019/06/27 Python
python打包exe开机自动启动的实例(windows)
2019/06/28 Python
python读写文件write和flush的实现方式
2020/02/21 Python
详解python算法常用技巧与内置库
2020/10/17 Python
在python中对于bool布尔值的取反操作
2020/12/11 Python
你不知道的葡萄干处理法、橙蜜处理法、二氧化碳酵母法
2021/03/17 冲泡冲煮
css3 实现元素弧线运动的示例代码
2020/04/24 HTML / CSS
Ralph Lauren法国官网:美国高品味时装品牌
2017/12/08 全球购物
省级四好少年事迹材料
2014/01/25 职场文书
环保小标语
2014/06/13 职场文书
缓刑人员思想汇报500字
2014/09/12 职场文书
升职自荐信怎么写
2015/03/05 职场文书
2015年学校精神文明工作总结
2015/05/27 职场文书
Python中的socket网络模块介绍
2022/07/23 Python
一文解答什么是MySQL的回表
2022/08/05 MySQL