innerHTML:一旦使用了这个属性,它的全部内容都要被替换掉。且不会返回任何对刚插入的内容的引用

与document.write()方法一样,innerHTML属性也是HTML专有属性,不能用于任何其他标记语言文档。

createElement方法(创建元素节点)

语法:document.createElement(nodeName)

document.createElement("p")

appendChild方法(成为文档中某个现有节点的子节点)

语法:parent.appendChild(child)

document.getElementById("testdiv").appendChild(document.createElement("p"));//新创建的p元素成为testdiv元素的一个子节点

createTextNode方法(创建元素节点)

语法document.createTextNode(text)

document.createTextNode("hello world");

DOM提供insertBefore()方法,这个方法将把一个新元素插入到一个现有元素前面,在调用此方法时,必须有三个参数:

①新元素:你想插入的元素(newElement)

②目标元素:你想把这个新元素插到哪个元素(targetElement)之前

③父元素:目标元素的父元素(parentElement)

语法:parentElement.insertBefore(newElement,targetElement)

在DOM里,元素节点的父元素必须是另一个元素节点(属性节点和文本节点的子元素不允许是元素节点)

不必搞清楚父元素是哪个,因为targetElement元素的parentNode属性值就是它。

var gallery=document.getElementById("imagegallery");
gallery.parentNode.insertBefore('placeholder,gallery');//将placeholder元素插入到imagegallery的前面去。

在DOM中不提佛那个insertAfter()方法,可以自己创建一个

function insertAfter(newElement,targetElement){
    var parent=targetElement.parentNode;
    if (parent.lastChild==targetElement) {
        parent.appendChild(newElement);
    }else{
        parent.insertBefore(newElement,targetElement.nextSibling);
    }
}

使用insertAfter()方法

var gallery=document.getElementById("imagegallery");

把placeholder(这个变量对应着新创建出来的img元素)插入到gallery的后面:

insertAfter(placeholder,gallery);

最新文章

  1. java反射(基础了解)
  2. Sublime Text 使用介绍、全套快捷键及插件推荐
  3. NPOI操作EXCEL(一)——npoi基础
  4. div+css 设计下拉
  5. c# 获取 本周、本月、本季度、本年 的开始时间或结束时间
  6. linux KERNEL 问题
  7. RDIFramework.NET(.NET快速开发框架) 答客户问(2014-02-23)
  8. 使用 CJSON 在C语言中进行 JSON 的创建和解析的实例讲解
  9. nRF51822之WDT浅析
  10. win7下禁用ctrl alt del +上下左右键
  11. vmware产品
  12. c++自带倒置数组函数
  13. jvm对大对象分配内存的特殊处理(转)
  14. 程序员要拥抱变化,聊聊Android即将支持的Java 8
  15. Android项目实战(三十五):多渠道打包
  16. 【译】如何高效的使用 Git
  17. pycharm同步代码
  18. 利用travis自动化构建与部署(文档项目)
  19. Ontology Relations
  20. Hibernate自身一对多和多对多关系映射

热门文章

  1. 20181031 temp
  2. stm32 外部中断学习
  3. HDU 5353—— Average——————【贪心+枚举】
  4. 动态行转列 pivot实现
  5. Container&injection(容器与注入思想)
  6. XHTML教会我的一些东西-2
  7. Java Knowledge series 7
  8. 厌烦了写findViewById 试试ButterKnife吧
  9. lunix重启service network restart错误Job for network.service failed. See 'system 或Failed to start LSB: Bring
  10. linux下使用iperf测试服务器带宽