HomeGithub个人博客Weibo订阅

随笔档案-2013年4月24日

JS闭包的用途

2013-04-24 08:41 by Barret李靖, 973 阅读, 收藏, 编辑
摘要: 我们来看看闭包的用途。事实上,通过使用闭包,我们可以做很多事情。比如模拟面向对象的代码风格;更优雅,更简洁的表达出代码;在某些方面提升代码的执行效率。1. 匿名自执行函数我们知道所有的变量,如果不加上var关键字,则默认的会添加到全局对象的属性上去,这样的临时变量加入全局对象有很多坏处,比如:别的函数可能误用这些变量;造成全局对象过于庞大,影响访问速度(因为变量的取值是需要从原型链上遍历的)。除了每次使用变量都是用var关键字外,我们在实际情况下经常遇到这样一种情况,即有的函数只需要执行一次,其内部变量无需维护,比如UI的初始化,那么我们可以使用闭包:var datamodel = { ... 阅读全文

IE6 bug集

2013-04-24 08:08 by Barret李靖, 781 阅读, 收藏, 编辑
摘要: 1.IE6的3像素偏移BUG 当浮动元素与非浮动元素相邻(注意这里的相邻可以是纵向的也可以是横向的)时,这个3像素的Bug就会出现,它会偏移3像素。实际表现就是两个元素之间产生了一道缝隙!解决方法很简单,将两个元素都浮动就OK了。此BUG深层的原因是非浮动元素的layout未触发,所以这里只要是能够触发layout的css都可以解决问题。2.IE6 双倍边距问题 当浮动元素设置margin边距时,边距会加倍。解决方法是给浮动元素加上display:inline属性。3.IE6下空标签高度问题 当你把标签的高度设置为0-19内的数字时,IE6会一致的显示为19px高。解决方法:给标签加上over 阅读全文
点击右上角即可分享
微信分享提示