jquery 基础

用过 jQuery 的人应该都有感受,它比原生 JavaScript 容易得多,不得不好奇它是怎么做到的,于是决定打开 jQuery 源码一探究竟。本文针对的是 jQuery 2.0.3 版本源码,对其中一些重要又基本的概念进行梳理,有时间的话,后面会陆续对各个具体的功能模块进行分析。

More

为什么函数形参设为 undefined

JavaScript 中函数形参的个数和实参个数并不要求相等。函数的 length 属性返回形参个数,在函数内部 argument.length 返回实参个数。形参个数小于实参个数是允许的,不会报错;形参个数大于实参个数时,被省略的参数值为 undefined。

More

前端构建工具 grunt

同样作为前端构建工具,grunt 和 gulp 的功能很类似,都可以帮助我们开发者进行代码检查、编译、单元测试、文件合并、压缩等任务。它们主要区别在于,grunt 在多个处理流程过程中会有多次 I/O 操作,并生成多个中间文件;而 gulp 只需要一次 I/O 操作,随后都是文件流式处理,效率较高。不过,grunt 生态系统非常庞大,有很多插件可供选择,jQuery、Bootstrap 等优秀项目都在使用 grunt,所以还是很有必要学习 grunt 的。

More

css 浮动及清理浮动

默认情况下,元素处于普通流。给元素设置 float 属性后,可以使元素向左或向右浮动,直到它的外边缘碰到包含块或者另一个浮动框。当然了,如果元素 float 属性设为 none,那就表示不浮动,它还是出现在它原本应该出现的位置。

More

理解 css 块级格式化上下文(BFC)

BFC(Block Formatting Contexts)即“块级格式化上下文”。BFC 是一个独立的布局环境,里面元素的位置是不受外界元素的影响的,其中的块盒和行盒(行盒由一行中所有的内联元素组成)都会沿着父容器边框垂直排列。例如,只要元素的 overflow 值不是 visible,就会触发 BFC。这也是我们将父元素设置 overflow: hidden 来清除浮动的原理。

More