批量设置样式:json、cssText、with
location、hash、query的处理,刷新保存页码
Date对象应用:setFullYear/Month等,时间戳、倒计时
Date高级应用
闭包的应用、封闭命名空间
ajax无刷新数据加载:创建、发送、接收、字符集和缓存
DOM应用:firstChild/lastChild、nextSibling/previousSibling
操作属性的第三种方式、自定义属性的获取、src的相对路径
offsetParent、计算元素的页面绝对位置
图片延迟加载——迅雷
简易瀑布流——花瓣
横向瀑布流——百度
DOM与innerHTML、innerHTML的bug
天猫、淘宝吸顶导航条
天猫、京东placeholder输入框
永远在页面中的右键菜单、提示图片
图片预加载、Image对象的使用
Image对象批量加载
运动基础、匀速运动、运动框架、侧边栏、淡入淡出
缓冲运动、页面提示框
多物体运动框架、万能运动框架、链式运动框架、完美运动框架
布局转换、淘宝幻灯片
运动应用:划动提示层、百度百科数字框、新浪滚动微博
永远在页面中放大的图片
无缝滚动
手风琴幻灯片、淘宝网无缝滚动幻灯片
this的用法、完美拖拽
完美封装可重用代码
完美拖拽、吸附拖拽、带框拖拽
程序思想——如何找思路,如何找规律,如何思考
碰撞检测、模拟窗口拖拽大小
窗口拖拽大小的封装和重用
自定义滚动条、鼠标滚轮
事件绑定、DOM事件流
cookie基础
ajax高级应用:用户注册和登录、表单提交
后台接口的使用、接口文档
编写AJax的基本步骤
Jsonp跨域的方法——百度下拉提示
script标签的怪异特性、callback的使用
Jsonp标签的管理
封装可重用的Jsonp方法
ajax制作简易新浪微博:后台、接口、分页、顶、页码
其他常见数据格式及用法:CSV、XML
JS中的预解析机制、script出错时的处理机制
预解析相关面试题
递归及其各种应用
递归相关面试题
递归的性能问题、递归的优化
栈溢出的原因和处理
引用、复制
JS中的异常:try...catch的使用
try的嵌套和性能问题
抛出异常、Exception对象、异常和返回值的区别及用途
JS变量生存周期、垃圾回收机制
闭包与JS垃圾回收
闭包的用法、保存i的值
JS性能优化——健壮性、维护性、性能的平衡
性能瓶颈的识别——性能检测工具的使用:Chrome profiles、YSlow等
JS阻塞加载、图片延迟加载、网络性能优化、压缩、CDN的使用
JS执行性能优化:DOM操作、循环、数组优化、局部变量、eval、parseInt、系统函数、字符串连接、正则等
实例:颜色选择器组件
实例:输入字数统计
正则表达式:RegExp对象、search方法、忽略大小写
match方法和全局匹配、量词的问题、replace方法
字符类、转义字符、行首行为、中文、单词边界、括号
正则应用:可重用的表单校验
自动表单校验、批量表单校验
表格操作:tBodies、tHead、tFoot、rows、cells
表格搜索、排序
自定义表单组件
DOM文本节点:创建、兼容、应用
firstChild怪异问题、childNodes的问题
实例:google日历
domReady事件:优点、DOMContentLoaded、defer、onload
事件队列、封装ready事件函数
事件委托(事件代理):冒泡的使用、srcElement属性、target属性、this的检测
call的使用——解决this指向问题
mouseleave事件——作用、封装,彻底解决mouseout冒泡的问题
运动高级:弹性运动、碰撞运动
弹性应用:滑动导航