1、改变原数组
push、pop在数据末尾增加、删除数据
unshift、shift在数据首位增加、删除数据
sort、reverse按ASCII升序、逆序
splice(下标从0或-1起,截取几位,插入数据)
arr.sort(function(a,b){ //相当于冒泡排序
return a-b; //升序
//return b-a 逆序
})
2、不改变原数组(产生一个新数组)
arr.concat(arr1)
arr.toString() //将数组元素变为字符串
slice(下标,下标b) //截取到下标b-1
join、split连接成字符串、分割为数组
var div = document.getElementByTagName('div')[0] 通用于任何浏览器
getElementByClassName() 在ie9以下没有
键盘类事件
触发顺序 keydown > keypress > keyup > click
文本类事件
oninput 文本变化时触发
onchange 鼠标聚焦onfocus、失焦onblur前后,文本发生变化时触发
窗体类事件
onscroll 滚动条滚动即触发
遍历节点树:适用于任何浏览器
<div> //childNodes子节点、nextSibling下一个兄弟节点
123 //文本节点
<strong></strong> //元素节点 文本节点
</div>
属性有:
nodeName、nodeValue、hasChildNodes()、childNode子节点数组
nodeType节点类型:元素节点1、属性节点2、文本节点3、注释节点8、document9、
DocumentFragment11
遍历元素节点树:
children适用于任何浏览器(ie4,ie5不兼容)
元素节点的属性集合 attributes
DOM操作:
创建元素节点 var div = document.createElemrnt(‘div’);
写入文本 div.innerHTML = 123;
放入页面 document.body.appendChild(div)
parent.removeChild(child) 剪切
child.remove() 完全删除
parent.replaceChild(new,origin) 替换
var data = new Data();
data.getTime() 返回时间戳,毫秒数
元素的尺寸
dom.offsetWidth = dom.getBoundingClientRect() = content + 2padding
元素的位置
dom.offsetLeft、dom.offsetTop
忽略自身定位:无定位父级,向文档定位;有则向父级定位
dom.offsetParent返回最近的有定位的父级
滚动条滚动
window.scroll(x,y) = window.scrollTo(x,y) 滚动到当前位置
window.scrollBy(x,y) 累积滚动距离,负数向上滚