一、dom常识
1、style属性
style对象的属性值都是字符串,设置时必须包括单位,但是不含规则结尾的分号。比如,elem.style.width不能写为100,而要写为100px。

2、getComputedStyle
获取元素的高度。

var elem = document.getElementById('container');
var hValue = window.getComputedStyle(elem, null).getPropertyValue('height');
上面代码得到的height属性,是浏览器最终渲染出来的高度,比其他方法得到的高度有更大的可靠性。
window.getComputedStyle(test, ':before').content;

3、createTextNode和innerHTML区别

var p=document.createElement("p");
p.className="message";
p.innerHTML="<b>I love js</b>";
document.body.appendChild(p);

innerHTML属于HTML Dom,会将文本中包含的HTML代码实现效果。

var p=document.createElement("p");
p.className="message";
var textnode=document.createTextNode("<b>I love js</b>");
p.appendChild(textnode);
document.body.appendChild(p);

createTextNode属于XML Dom,只是纯粹创造了文本节点,所以返回的效果也就是纯文本内容。

4、innerHTML,outerHTML,innerText,outerText的区别

//innerHTML
设置或获取位于对象起始和结束标签内的HTML,输出<div id="div"></div>之间的内容;
//outerHTML
设置或获取对象及其内容的HTML形式,连同<div id="div"></div>和它们之间的内容一起输出;
//innerText
设置或获取位于对象起始和结束标签内的文本,输出的内容都是网页上应该正常输出的;
//outerText
设置(包括标签)或获取(不包括标签)对象的文本,输出的内容都是网页上应该正常输出的。

二、dom操作
1、创建新节点

createDocumentFragment()    //创建一个DOM片段
createElement()   //创建一个具体元素
createTextNode()   //创建一个文本节点

2、添加节点

appendChild()

3、插入节点

insertBefore()

4、复制节点

cloneNode() 

5、移除节点

removeChild()

6、替换节点

replaceChild()

7、查找节点

getElementsByTagName()    //通过标签名称
getElementsByName()    //通过元素的Name属性的值
getElementById()    //通过元素Id,唯一性

dom那些事儿的更多相关文章

  1. 为什么越来越少的人用jQuery

    摘要:JQuery该退役了. 原文:为什么越来越少的人用jQuery 作者:Lemonade Fundebug经授权转载,版权归原作者所有. 最早期的开发,大多都使用jQuery,它给我们带来了很多的 ...

  2. js表格打印自动分页demo

    本文翻译自:How Does setState Know What to Do? 原作者:Dan Abramov 如果有任何版权问题,请联系shuirong1997@icloud.com 当你在组件中 ...

  3. 「译」setState如何知道它该做什么?

    本文翻译自:How Does setState Know What to Do? 原作者:Dan Abramov 如果有任何版权问题,请联系shuirong1997@icloud.com 当你在组件中 ...

  4. DOM LEVEL 1 中的那些事儿[总结篇-下]

    本文承接:DOM LEVEL 1 中的那些事儿[上]   2.3 Element类型 Element类型应该是Document类型之外使用的最多的节点类型了,Element代表XML或HTML文档中的 ...

  5. 说说DOM的那些事儿

    引子 先来一颗栗子: <img src="/sub/123.jpg" alt="test" /> <script type="tex ...

  6. DOM LEVEL 1 中的那些事儿[总结篇-上]

    DOM是前端编程中一个非常重要的部分,我们在动态修改页面的样式.内容.添加页面动画以及为页面元素绑定事件时,本质都是在操作DOM.DOM并不是JS语言的一个部分,我们通过JAVA.PHP等语言抓取网页 ...

  7. 什么是jquery $ jQuery对象和DOM对象 和一些选择器

    1什么是jQuery: jQuery就是将一些方法封装在一个js文件中.就是个js库 我们学习这些方法. 2为什么要学习jQuery: 原生js有以下问题: 1.兼容性问题2.代码重复3.DOM提供的 ...

  8. 从click事件理解DOM事件流

    事件流是用来解释页面上的不同元素接受一个事件的顺序,首先要明确两点: 1.一个事件的影响元素可能不止一个(同心圆理论),但目标元素只有一个. 2.如果这些元素都绑定了相同名称的事件函数,我们怎么知道这 ...

  9. AngularJS in Action读书笔记2——view和controller的那些事儿

    今天我们来818<angularjs in action>的第三章controller和view. 1.Big Picture概览图 View是angularjs编译html后呈现出来的, ...

随机推荐

  1. java删除文件及其目录

    1.删除指定文件路径 public @ResponseBody String deleteFiles(HttpServletRequest request) { log.info(this.getCl ...

  2. 1.内网ntp服务器的搭建

    1.拓扑图

  3. Sql Server 2008 数据库18456错误怎么解决?

    可以windows连接,以前都可以,昨天突然就不可以用SQL连接,报18456错误. 1.以windows验证模式进入数据库管理器. 2.右击sa,选择属性: 在常规选项卡中,重新填写密码和确认密码( ...

  4. fnmatch模块的使用

    fnmatch模块的使用 此模块的主要作用是文件名称的匹配,并且匹配的模式使用的unix shell风格.fnmatch比较简单就4个方法分别是:fnmatch,fnmatchcase,filter, ...

  5. 【Shell】获取当前路径

    bathpath=$(cd dirname $0 ; pwd)

  6. MHL技术剖析,比HDMI更强【转】

    转自:http://blog.chinaunix.net/uid-22030783-id-3294750.html MHL这个只是经常听说,没有见过的东西,现在已经非常火热了,我们才刚刚开始做,人家三 ...

  7. 企业环境下的OpenStack自动化功能测试(转载)

    原文地址:http://mp.weixin.qq.com/s?__biz=MzAxOTAzMDEwMA==&mid=2652502581&idx=1&sn=0c26519bcb ...

  8. spring mvc context-param init-param 区别

    init-param:mvc 配置文件context-param spring配置文件

  9. centos6.5环境通达OA数据库mysql5.0.67升级至mysql5.5.48方案

    centos6.5环境通达OA数据库mysql5.0.67升级至mysql5.5.42方案 整体方案: 环境准备,在备用服务器安装mysql5.5数据库 1.停用生产环境的应用访问 直接修改web的访 ...

  10. 使用Java类库POI生成简易的Excel报表

    使用Java类库POI生成简易的Excel报表 1.需求 1.数据库生成报表需要转义其中字段的信息.比如 1,有效 2.无效等 2.日期格式的自数据需要转义其格式. 3.标题的格式和数据的格式需要分别 ...