Javascript入门学习第六篇 js DOM编程第1/2页_基础知识

学习英文:
Dom:文档对象模型。Document object model
Bom:浏览器对象模型。
注:也可以叫窗口对象模型。(window object model.)
API:应用编程接口。
注:DOM其实可以看作一种API。
Node:节点。
注:节点分为:元素节点,属性节点,文本节点。
元素节点 包含 属性节点和文本节点。

Dom树:

下面我们直接看 到底怎么操作DOM。
1,    创建元素节点。createElement():
<SCRIPT LANGUAGE="JavaScript">
 var a  = document.createElement("p");
 alert( "节点类型是  : " +a.nodeType   +  " , 节点名称是: "  +  a.nodeName);
</SCRIPT>
输出  ;     nodeType 是  1   .    a.nodeName 是  p ;
所以它创建的是一个元素节点 ….你也许会想  为什么文档中没发现 节点 p呢?
我们看下面例子:
<body>
</body>
<SCRIPT LANGUAGE="JavaScript">
var a  = document.createElement("p");
document.body.appendChild(a);
</SCRIPT>
用firebug查看下,发现文档中已经 有我们需要的结果了。

原来createElement()方法创建出来的新元素节点不会被自动添加到文档里,既然没添加到文档里,说明它还是一个游离的状态。如果想把它添加到文档里,可以使用 appendChild()或者insertBefore()方法或者replaceChild()方法(后面介绍)。 

2,创建文本节点。createTextNode():
var b = document.createTextNode("my demo");
 alert( "节点类型是  : " +b.nodeType   +  " , 节点名称是: "  +  b.nodeName);
输出  ;     nodeType 是  3   .    a.nodeName 是  #text ;
所以它创建的是一个文本节点 ….你也许又会想  为什么文档中没发现 这个文本节点 呢?难道也和createElement()一样,需要使用appendChild()添加到文档里。

对的,你的想法非常对。
我们看下面例子:
<body>
</body>
<SCRIPT LANGUAGE="JavaScript">
var mes = document.createTextNode("hello world");
var container = document.createElement("p");
container.appendChild(mes);//先把文本节点添加到 元素节点
document.body.appendChild(container);//再把元素节点添加到 文档里
</SCRIPT>

3,    复制节点。cloneNode(boolean) :一个参数:
看一个例子:
<body>
</body>
<SCRIPT LANGUAGE="JavaScript">
var mes = document.createTextNode("hello world");
var container = document.createElement("p");
container.appendChild(mes);
document.body.appendChild(container);
var newpara = container.cloneNode(true);//true和false的区别
document.body.appendChild(newpara );

var newpara = container.cloneNode(false);//true和false的区别
document.body.appendChild(newpara );
</SCRIPT>
看下firebug下的结果: 

当前1/2页 12下一页阅读全文

时间: 2024-08-20 00:47:17

Javascript入门学习第六篇 js DOM编程第1/2页_基础知识的相关文章

Javascript入门学习第八篇 js dom节点属性说明第1/2页_基础知识

 今天我们讲DOM属性. 前面其实我们已经碰过DOM属性了. 比如: nodeName,nodeType-..今天我们详细的讲解下. 1,nodeName属性  : 节点的名字. 如果节点是元素节点,那么返回这个元素的名字.此时,相当于tagName属性. 比如: <p>aaaa</p>  : 则返回 p ; 如果是属性节点,nodeName将返回这个属性的名字. 如果是文本节点,nodeName将返回一个#text的字符串. 另外我要说的是: nodeName属性是一个只读属性,

Javascript入门学习第九篇 Javascript DOM 总结第1/2页_基础知识

1,    创建节点. createElement(): var a  = document.createElement("p"); 它创建的是一个元素节点,所以 nodeType 等于 1 . a.nodeName 将返回 p ; 注意:createElement()方法创建出来的新元素节点不会被自动添加到文档里,既然没添加到文档里,说明它还是一个游离的状态.所以它也没有nodeParent属性. 如果想把它添加到文档里,可以使用 appendChild()或者insertBefor

Javascript入门学习第五篇 js函数第1/2页_基础知识

1 ,函数: function是一个定义一次 却可以多次调用的js代码. 当一个函数被一个对象调用时,那么这个函数就叫做这个对象的方法. function cssrain( x , y) {  //code } 解释: cssrain  :  为函数名: ( )     :   为 运算符: x ,  y  :   为 参数: 2 ,函数的返回值: function a(x){     document.write(x); } function b(y){    document.write(y

Javascript入门学习第四篇 js对象和数组第1/2页_基础知识

比较难哦.做好心里准备吧...... 深呼吸... 1 , for  /  in : 一种遍历(枚举)对象属性的方法,可以循环我们呢事先不知道的属性. 它可以枚举处用户定义的所有属性,但却不能枚举出某些预定义的属性和方法. 不能枚举的属性通常是继承的属性 删除一个对象的属性:  delete book.width ; 从对象中移除了属性,在删除之后,用for/in将不会枚举该属性,并且用width in book 也检测不到该属性. for/in 的另一个重要的用途就是跟关联数组一起使用:(如果

Javascript入门学习第三篇 js运算第1/2页_基础知识

1, 表达式: 最简单的表达式:直接量或者变量名.var a =1; 直接量表达式的值:本身. 变量表达式的值:该变量所存放或引用的值. 2 , 运算符: 一元运算符: 比如  - 3  二元运算符: 比如  3+4  三元运算符: 比如  ?   :     新手常遇到的问题: 递增运算符: 比如: i  =  1 ; j  = ++ i ; // 前递增运算,即先对运算数进行递增,然后再去计算. //输出   i  =2;    j=2 ; i  =  1 ; j  =  i ++; // 

JavaScript框架编程第1/2页_基础知识

使用JavaScript框架 在讲述 window 对象的时候,我们提到过,一个框架内的网页也是 window 对象,也就是说,Frame 对象也是 window 对象.用最容易理解的话说,每一个 HTML 文件占用一个 window 对象,包括定义框架的网页("框架网页").在 IE 里用"<iframe>"标记在文档中插入的框架也是 window 对象,但是用"包含网页"的方法(在 HTML 中显示为"<!--we

JS入门代码集合第1/4页_基础知识

 基础知识:HTML  JavaScript就这么回事1:基础知识    1 创建脚本块   1: <script language="JavaScript">   2: JavaScript code goes here   3: </script>    2 隐藏脚本代码   1: <script language="JavaScript">   2: <!--   3: document.write("Hel

整理的比较不错的JavaScript的方法和技巧第1/3页_基础知识

适合阅读范围:对JavaScript一无所知-离精通只差一步之遥的人 基础知识:HTML JavaScript就这么回事1:基础知识  1 创建脚本块 1: <script language="JavaScript"> 2: JavaScript code goes here 3: </script>  2 隐藏脚本代码 1: <script language="JavaScript"> 2: <!-- 3: documen

JS函数定义方式的区别介绍_基础知识

关于JS的函数定义方式有以下两种: (1)典型的函数声明 function slide(arguments){ //...code } (2)以函数表达式的形式定义函数 var slide = function(arguments){ //...code } 虽然上面两种方式逻辑上是等价的,但是还是有点小区别: 区别一:例一中的函数会在代码执行以前被加载到作用域中,而例二则是在代码执行到那一行的时候才会有定 义: 区别二:函数声明会给函数指定一个名字,而函数表达式则是创建一个匿名函数,然后将这个