jquery 框架简单分析
2016-08-10 14:50
176 查看
// jquery外部用一个匿名函数自执行 然后传入参数
(function(w,undefined){
//undefined既不是关键字 也不是保留字 所以要把undefined传入进来 防止被恶意修改 为什么undefined不用当实参传 而是直接在形参里写undefined,因为不需要传实参,不传实参其实就是undefined了
//window 当实参传 亮点原因 容易压缩 然后是window是最顶层 就不用很麻烦的去查找了
window.$ = $; // 对外提供了接口
})(window) //jquery 在外面用了一个匿名函数自执行 包裹 把变量 方法 函数 包裹在里面 然后在对外提供接口
//undefined既不是关键字 也不是保留字 所以要把undefined传入进来 防止被恶意修改
var undefined = 10;
console.log(undefined); //在低版本的浏览器 会打印出10 ,高版本会打印出undefined
//平时我们一般的写法
function Aaa(){}
Aaa.prototype.init = function(){ //这里 直接调用初始化方法 就可以了
a1.css();
}
Aaa.prototype.css = function(){
}
var a1 = new Aaa();
al.init();
//jquery 写法
function jQuery(){
return new jQuery.prototype.init(); // init()方法中实现了选择器 方法等
}
jQuery.prototype.init = function(){ //这里 直接调用初始化方法 就可以了
a1.css();
}
jQuery.prototype.css = function(){
}
jQuery.fn.init.prototype = jQuery.fn; //可以写成jQuery.prototype.init.prototype = jQuery.prototype; 意思就是把jQuery下面的原型 赋值给了 jquery原型下的init方法下的原型
//所以就可以形成在jquery 中 调用就$('.').css()或者jQuery('.').css()
(function(w,undefined){
//undefined既不是关键字 也不是保留字 所以要把undefined传入进来 防止被恶意修改 为什么undefined不用当实参传 而是直接在形参里写undefined,因为不需要传实参,不传实参其实就是undefined了
//window 当实参传 亮点原因 容易压缩 然后是window是最顶层 就不用很麻烦的去查找了
window.$ = $; // 对外提供了接口
})(window) //jquery 在外面用了一个匿名函数自执行 包裹 把变量 方法 函数 包裹在里面 然后在对外提供接口
//undefined既不是关键字 也不是保留字 所以要把undefined传入进来 防止被恶意修改
var undefined = 10;
console.log(undefined); //在低版本的浏览器 会打印出10 ,高版本会打印出undefined
//平时我们一般的写法
function Aaa(){}
Aaa.prototype.init = function(){ //这里 直接调用初始化方法 就可以了
a1.css();
}
Aaa.prototype.css = function(){
}
var a1 = new Aaa();
al.init();
//jquery 写法
function jQuery(){
return new jQuery.prototype.init(); // init()方法中实现了选择器 方法等
}
jQuery.prototype.init = function(){ //这里 直接调用初始化方法 就可以了
a1.css();
}
jQuery.prototype.css = function(){
}
jQuery.fn.init.prototype = jQuery.fn; //可以写成jQuery.prototype.init.prototype = jQuery.prototype; 意思就是把jQuery下面的原型 赋值给了 jquery原型下的init方法下的原型
//所以就可以形成在jquery 中 调用就$('.').css()或者jQuery('.').css()
相关文章推荐
- JQuery1——基础($对象,选择器,对象转换)
- JavaScript演示排序算法
- 2015-2016网页设计趋势分析 Web Design of Trends
- jQuery Ajax 跨域调用
- 移动端的长按事件
- jquery教程靠边站,一分钱不花让你免费学会jquery
- JQuery+Strusts1.x无刷新登录
- $.ajax()方法详解
- jQuery ajax - ajax() 方法
- JavaScript 各种遍历方式详解
- 数组方法汇总
- Mootools 1.2教程 函数
- autoit InputBox 函数
- 文件遍历排序函数
- jQuery Html控件基本操作(日常收集整理)
- jQuery插件实现文字无缝向上滚动效果代码
- jQuery菜单插件用法实例
- JQuery 初体验(建议学习jquery)
- 基于Jquery和CSS3制作数字时钟附源码下载(CSS3篇)
- Jquery实现的table最后一行添加样式的代码