JS是以事件驱动为核心的一门语言。
事件的三要素:事件源、事件、事件驱动程序。
例如:
<body> <div id="box1"></div> <script type="text/javascript"> // 1、获取事件源 var div = document.getElementById("box1"); // 2、绑定事件 div.onclick = function () { // 3、书写事件驱动程序 alert("我是弹出的内容"); } </script> </body>常见的事件如下:
DOM:文档对象模型。DOM 为文档提供了结构化表示,并定义了如何通过脚本来访问文档结构。目的其实就是为了能让js操作html元素而制定的一个规范。
DOM就是由节点组成的。
HTML加载完毕,渲染引擎会在内存中把HTML文档,生成一个DOM树,getElementById是获取内中DOM上的元素节点。然后操作的时候修改的是该元素的属性。
DOM的数据结构如下:
DOM节点的获取方式其实就是获取事件源的方式。
节点的访问关系,是以属性的方式存在的。
JS中的父子兄访问关系:
插入节点有两种方式,它们的含义是不同的。
方式1:
父节点.appendChild(新的子节点);解释:父节点的最后插入一个新的子节点。
方式2:
父节点.insertBefore(新的子节点,作为参考的子节点)解释:
在参考节点前插入一个新的节点。如果参考节点为null,那么他将在父节点最后插入一个子节点。格式如下:
要复制的节点.cloneNode(); //括号里不带参数和带参数false,效果是一样的。 要复制的节点.cloneNode(true);括号里带不带参数,效果是不同的。解释如下:
不带参数/带参数false:只复制节点本身,不复制子节点。
带参数true:既复制节点本身,也复制其所有的子节点。
转载于:https://www.cnblogs.com/gsdnb/p/11482519.html
相关资源:C# 委托与事件的概念及理解