onmouseover  鼠标移入事件
onmouseout  鼠标移出事件
onclick 鼠标点击
onload     加载完事件
window.onload  窗口加载完img.onload   body.onload


js中不允许'-'出现
font-size  fontSize  padding-top  paddingTop
所有相对路径 ,颜色值,innerHTML值 别拿来判断
浮动  div.style.styleFloat    div.style.cssFloat
IE(styleFloat) ,非IE(cssFloat)
.left{float:left} .right{float:right}  可以直接改class

css样式的修改
document.getElementById()  获取元素 ID的名
从哪获取.getElementsByTagName() 获取元素  标签名 动态获取  获取到的是元素的集合整个页面的标签li=>[li,li,li] 所以必须加中括号
li[0]  


obj.style.display='none'  元素属性操作   //obj是元素
.style.样式=值   样式只能是一个整体  或者.style[样式]=值  这里的样式可不是整体
.后面的值无法更改 []里的值可以更改  .可以替换为[]
.style 改css  .href=""  该css样式

html的属性操作  
属性读操作:获取,找到
读:元素.属性名   
属性写操作:替换,修改  ('添加')
写:元素.属性名=新的值
obj.innerHTML     读取元素内的所有HTML代码
obj.innerHTML=新的值    修改元素内的所有HTML代码



数据类型
typeof 判断数据类型
charAt 查找字符串的第几个字符
push 往数组后塞东西
Number 转换成数字类型
parseInt 截取整形数字//遇到字母后不在截取
parseFloat 截取浮点数,认识小数点
Math.round() 4舍5入
push() 往数组里存东西

arguments   //但函数的参数个数无法确定的时候用
getComputedStyle(odiv)['width']   获取元素的样式  //IE 6 7 8 有兼容问题
odiv.currentStyle.['width']   //IE 6 7 8 兼容 别的不兼容

定时器:
setInterval(函数,毫秒)  //重复执行
clearInterval(setInterval(函数,毫秒))         //清除定时器
setTimeout(函数,毫秒)  //执行一次
clearTimeout()          //清除

日期对象:
new Date();
getFullYear();   //年
getMonth()+1;   //月
getDate();   //日
getDay();   //星期
getHours();   //时
getMinutes();   //分
getSeconds();   //秒


倒计时
// 天:Math.floor(t/86400)
// 时:Math.floor(t%86400/3600)
// 分:Math.floor(t%86400%3600/60)
// 秒:t%60

November 27,2017 22:3:0  
2017, 7, 25, 17, 55, 0

一月:January 
二月:February
三月:March
四月:April
五月:May 
六月:June 
七月:July
八月:August 
九月:September 
十月:October 
十一月:November
十二月:December


时间戳:getTime()


字符串:
str.length  //长度
str.charAt()  //通过位置找字符串
str.charCodeAt()  //ASCL编码值
String.fromCharCode() //输出编码值对应的值
str.indexOf()        //查找字符串中字符的位置,第二个参数是从第几个开始默认为0    从左往右  -1表示没有
str.lastIndexOf()    //从右往左找
str.substring()    //截取类,负数为0
str.slick() //截取,负1是最后一个
str.toUpperCase()  //转换大写
str.toLowerCase()  //转换小写
split() //分割字符串分成数组   括号什么也不写会分成整体,""会分成一个一个的,写.或别的会按照写。的加逗号分几个
join()     数组变字符串
split.join  //可以把数组挨个和字符串拼接
str.constructor    //判断是什么属性
1 48
9 57

json{name:leo,age:30}   jspn.name;
for in 遍历整个json
for(var attr in json)  
{
alert(attr);//输出json里的属性
alert(json[attr]); //输出值
}

数组
arr.push()  //往数组后塞   //返回值是数组的长度
arr.unshift()  //往数组前塞   //IE6 IE7 不支持它的返回值
arr.pop()     //扔掉数组最后一个
arr.shift()   //扔掉数组第一个       返回值就是扔的哪一个
arr.splice(0,1)  //删除     从0开始删除一个
arr.splice(0,1,'tm')  //替换第1个为tm
arr.splice(1,0,'qq')  //往0和1的中间塞东西
arr.sort()    //根据编码给数组排序 //默认以字符串方式排序
concat() //把数组的内容拼到一起
arr.sort(function(a,b){
return b-a;        b-a是从大到小排
});
arr.sort(function(a,b){
return a-b;       a-b是从小到大排
});
arr.sort(function(a,b){
return Math.random()-0.5;  //随机排序
})
Math.random()   //0-1的随机数,包括小数点
Math.round(Math.random()*10)     //0-10的随机数
Math.round(Math.random()*5+5) //5-10的随机数
Math.round(Math.random()*(y-x)+x)   //x-y的随机数
Math.round(Math.random()*x)   //0-x的随机数
Math.cell(Math.random()*x)   //1-x的随机数
cell向上取整  

arr.reverse(); //颠倒数组中的位置