(function(){})();这种结构是什么意思?

wudichaoren2011 2015-09-18 11:48:41







(function() {
/*
* 创建一个私有class
* @param {Object} els arguments 所有参数组成的类数组
*/
function _$(els) {
//...
}
//对HTML元素可执行的操作
_$.prototype = {
each: function(fn) { //fn 回调函数
for(var i=0; i<this.elements.length; i++) {
//执行len次,每次把一个元素elements[i]作为参数传递过去
fn.call(this, this.elements[i]);
}
return this;
},
setStyle: function(prop, value) {
this.each(function(el) {
el.style[prop] = value;
});
return this;
},
show: function() {
var that = this;
this.each(function(el) {
that.setStyle('display', 'block');
});
return this;
},
addEvent: function(type, fn) {
var addHandle = function(el) {
if(document.addEventListener) {
el.addEventListener(type, fn, false);
}else if(document.attachEvent) {
el.attachEvent('on'+type, fn);
}
};
this.each(function(el) {
addHandle(el);
});
return this;
}
};
//对外开放的接口
window.$ = function() {
return new _$(arguments);
}

})();
//----------------------- test --------
$(window).addEvent('load', function() {
$('test-1', 'test-2').show()
.setStyle('color', 'red')
.addEvent('click', function() {
$(this).setStyle('color', 'green');
});
})





(function(){})();这种结构是什么意思?

$(window)是什么意思?

el.style[prop] = value;中的el是什么意思?
...全文
296 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
bear1988 2015-10-22
  • 打赏
  • 举报
回复
el一般是element的缩写,也就是HTML元素的意思
木头海上漂 2015-09-21
  • 打赏
  • 举报
回复
js中对象后面加()代表执行
(function(){})()闭包,防止污染
hookee 2015-09-20
  • 打赏
  • 举报
回复
相当于 function a(){ ... }; //定义 a(); // 执行
  • 打赏
  • 举报
回复
第一种闭关写法我经常用来定义一个对象,并封装一系列类似的方法或属性供其它js调用
qq_24456329 2015-09-19
  • 打赏
  • 举报
回复
第一个是闭关写法,第二个是获取window对象第三个获取的一个对象,没有具体代码看不出是啥
leo_howl 2015-09-19
  • 打赏
  • 举报
回复
贴一个连接,说的比较清楚http://dengo.org/archives/1004
hch126163 2015-09-19
  • 打赏
  • 举报
回复
(function(){})();即时执行的匿名函数 $(window) $ 是一个函数 window 是参数 el.style[prop] = value; el 就是一个变量
似梦飞花 2015-09-18
  • 打赏
  • 举报
回复
(function(){})();即时执行的匿名函数 $自定义的东西阿

87,907

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧