系列文章目录
文章目录
一、初识js
1游览器执行js简介
2js的组成
3js书写位置
内嵌式
行内式
外部
4、注释
5、输入输出语句
6、变量
命名
7、数据类型
1、简单数据类型
数字
isNaN()判断非数字
字符串、转义符
布尔和undefined和nan
2、typeof检查数据类型
数据类型转换
8、运算符
算数运算符
比较运算符
逻辑运算符
优先级
三元表达式
数字补零
switch
9、循环
for循环
while循环
do while
continue break
10、数组
遍历数组
1数组长度
冒泡排序
10、函数
return返回值只返回一个
多个可以用数组
argumets
声名函数两种方法
11、作用域
作用域
### 变量作用域
js没有块级作用域
作用域链
内部函数能够访问外部,一层一层的找,就近原则
12、预解析
1 、预解析
13、对象
1、对象
字面量创建对象
2、变量属性函数方法区别
new object 创建对象
构造函数创建对象
为什么需要构造函数
new关键字
3、for in 遍历对象
14、内置对象
1、内置对象
查文档
2、math对象
3、deta 日期对象
格式化年月日
格式化时分秒
获取data毫秒数(时间戳)
倒计时
4、数组对象
1.添加删除数组
2.数组排序
只能排列个位数
多位数
4.数组索引
案例
数组转换为字符串
5、字符串对象
原本是普通类型
1遍历字符串
1字符串查找
查找相同字符索引
1根据位置返回字符
1字符串操作方法
6、总结
7、内存分配 栈和堆
二、web apis (交互效果)
一、DOM
二、获取元素
1.根据id获取 (getElementById)
2.根据标签名获取(getElementByTagName )
3.通过html’5 ie9兼容低版本不进入兼容
三、事件
事件高级应用
注册事件(addEventListener)
注册事件(attachEvent)
删除事件
传统
方法监听
四、操作元素
改变文本( element.innerText 和 element.innerHTML)
改变元素文本内容
innerText不识别html标签
在这里插入图片描述
改变属性
表单元素的操作
改变样式属性操作 (element.style 和 elemen.className)
是行内样式操作
精灵图遍历
排他思想
百度换肤
获取属性的值(element.属性 和 element.getAttribute(‘属性’))
获取自定义属性的值
设置属性值
移除属性值
5、tab的切换
布局两个大盒子
上面模块
下面模块
新增加自定义属性(ie11后兼容)
六、节点操作
1. 父节点(node.parentNode)
打印出box
2.子节点( parentNode.childNoes)
麻烦========
第二种
3第1最后节点
第一
最后
第二种方法获取的是元素节点兼容i9以上
实际开发
下拉菜单
4.兄弟节点
下一个
上一个
获得元素节点兼容i9以上
七、创建节点
ul里面有li就放在后面
放在前面
发表留言
删除节点(node.removeChild(child) )
删除留言
在发布留言那添加
复制节点
动态生成表格
三种动态创造元素的区别
1==========
2============
拼接字符串慢效率低
数组形式
3============
八、Dom事件流
事件对象
兼容性有些不识别e
事件对象的属性
阻止默认行为(事件)
阻止冒泡
兼容性方案
事件委托(代理)
不用给li每个都注册事件,直接给父元素注册
鼠标事件对象
跟随鼠标的天使案例
键盘事件
二、BOM
一.bom概述
如
页面加载事件
页面所以加载完成再加载
调整窗口大小事件
二、定时器 回调函数
一、setTimeout
5秒后关闭广告
清除定时器
二、setlnterval
倒计时案例
停止定时器
定时器名字定义在全局变量 例timer
发短信案例
三、js执行机构
同步
异步
location对象
点击跳转页面
获取参数值
location对象的方法(网页跳转)
navigator对象
history对象
相当于这个按钮
几就是前进几
加负号就是后退
比如-1
pc端网页特效
一、元素偏移量 offset系列
获取盒子里鼠标的距离
拖拽
京东放大镜
二、元素可视区client
立即执行函数
三、元素滚动scroll
滚动条事件
仿淘宝右侧侧边栏
四、动画函数封装
简单的动画封装函数
优化
案例轮播图
animate在上面
小bug
优化清除样式的封装成函数
自动
节流阀
淘宝动画返回顶部
在
筋斗云案例
移动端特效
触摸事件对象(touchstart)
拖到元素
移动端轮播图
classList属性
添加类
移除类
切换类
原来有的类就删除掉
没有就加上
小圆点
手指移动
回弹
优化用户移动手指才操作
二、返回顶部
移动端click事件延迟300毫秒解决
fastclick插件
轮播图插件
把css,js文件放进项目
在demo里的html文件打开查找代码
相关样式cv到相关页面的css文件里
将js cv到相关页面js的
属性
修改样式
在页面css中覆盖掉他
其他插件
http://www.superslide2.com
https://github/cubiq/iscroll
视频插件
bootstrap插件
本地存储
1.window.sessionStorage