js相关笔记(十一)

1.数组的那些遍历方法forEach、map、filter、every、some,在IE678中不存在,dom对象的属性操作方法getAttribute、setAttribute、removeAttribute在IE678中也不存在,通过控制台打印的时候发现,返回的是一个Object类型的{},也就是空对象。


2.通过dom对象的第一种获取属性的方式 对象.属性名和对象["属性名"],只能够获取标签上的行内属性,例如对象.style并不能获取内嵌的<style type="text/css"></style>标签对中的css样式属性和外链的<link re="stylesheet" href="1.css"/>中的css样式属性,但可以获取页面标签中的行内css样式,页面标签行内css样式通过style属性来获取,对象.style也是一个对象,并不是一个字符串,如果要获取字符串的话,可以通过对象.style.cssText来获取css样式文本字符串,也能通过对象.style.cssText来设置css样式文本字符串的值,jquery中的css方法就是通过cssText来实现的,cssText其实就是页面标签的style属性的文本值,通过它可以快速的覆盖原来的行内样式,获取和设置对象.style中的样式属性使用的命名规则是驼峰命名法而不是css样式里的-横杠,比如css样式中line-height转换为页面标签对象的style对象的属性时是对象.style.lineHeight。




3.盒子隐藏的方式  display visibility opacity position
◆box.style.display="none";隐藏 不占位置
◆box.style.visibility="hidden";隐藏 占位置
◆box.style.opacity="0";和下面一组  隐藏占位置box.style.filter="alpha(opacity=0)";只在IE678中有效
◆box.style.position="absolute";和下面一组 隐藏不占位置,box.style.top="-9999px";


4.dom元素创建的三种方式
◆使用document.write();这种方式会覆盖原来的页面的全部内容,慎用。
◆使用innerHTML属性,这种方式如果是持续添加的话,那么就使用+=,如果想覆盖原来的话,就直接=,绑定属性和内容比较方便。(节点套节点)。
◆使用document.createElement("li");这种方式是最纯正的,效率不高,因为还要添加到某个节点里面,但是创建的这个元素可以当作一个真正的页面元素来使用,定数量的时候一般用它。


5.元素的增加、删除、替换、克隆
◆增加:appendChild(newnode);追加新节点insertBefore(newnode,oldnode);把新节点插入到老节点之前
◆删除:removeChild(oldnode);移除老节点
◆替换:replaceChild(newnode,oldnode);使用新节点替换掉老节点
◆克隆:cloneNode();不完全克隆,cloneNode(true);完全克隆。


6.如果要把一个网页翻译成全英文的,那么可以在浏览器上使用百度翻译的插件,设置选项后,点一键翻译即可。


7.如果移动子节点,不要使用正的for循环,因为父元素中的子节点的长度会随着移动而减少,所以需要使用反for循环。





posted @ 2018-06-10 18:05  我叫贾文利  阅读(67)  评论(0编辑  收藏  举报