1.改内容,单标签用.value,双标签用.innerHTML=HTML
2.定时器setInterval(fun,speed)和setTimeout(fun,speed)的区别:
前者和方法内的时间不叠加,可一直循环,后者时间叠加,但是只执行一次,想循环的话,可以用递归。(arguments.callee能返回的当前执行的方法,可用于递归)
3.appendChild(newlistitem)在后面添加子元素,insertbefore(new,old)在old后面添加,remove(**.children(i))删除子元素
4.js数组,push在后面添加,unshift在前面添加,shift在前面删除,pop在后面删除。
5.js用.style只能获取dom行内样式(就是写在div中的style),要想获取外部引入的样式:
//获取非行间样式(style标签里的样式或者link css文件里的样式),obj是元素,attr是样式名
function getStyle(obj,attr){ //针对IE if(obj.currentStyle){ return obj.currentStyle[attr]; //由于函数传过来的attr是字符串,所以得用[]来取值 }else{ //针对非IE return window.getComputedStyle(obj,false)[attr]; } }6.创建对象有三种方式:
a.Object.create(proto [, propertiesObject ]) 是E5中提出的一种新的对象创建方式,第一个参数是要继承的原型,如果不是一个子函数,可以传一个null,第二个参数是对象的属性描述符,这个参数是可选的。
b.var obj=new Object();
c.var obj={};(推荐,不用new对象,不耗内存)
7.居中问题:
块级元素文本居中,或者他的行内子元素居中text-align。
块级元素自身居中margin:auto。
块级元素垂直居中将line-height设置成和height一样
行内元素垂直居中,vertical-align:middle