JavaScript中怎么利用DOM创建和克隆元素

这期内容当中小编将会给大家带来有关JavaScript 中怎么利用DOM创建和克隆元素,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。

创新互联专注于企业营销型网站建设、网站重做改版、藤县网站定制设计、自适应品牌网站建设、HTML5建站商城网站建设、集团公司官网建设、成都外贸网站建设公司、高端网站制作、响应式网页设计等建站业务,价格优惠性价比高,为藤县等各大城市提供网站开发制作服务。

createElement()和createTextNode()

createElement()和createTextNode()做的事情正如它们的名字所说的那样。最常见的JavaScript DOM方法实战-修改文档树中已经用过它们。当时的目的是把新创建的元素添加到文档树里,使它成为某个元素的***一个子节点。

//创建一个li新元素  var newChild=document.createElement('li');  //创建一个a 新元素  var newLink=document.createElement('a')  //创建一个 Text 节点  var newText=document.createTextNode('My Wiki');

newChild指向新创建的<li>元素对象,newLink指向新创建的<a>元素对象,而newText指向新创建的文本节点对象。这些节点都还没有被插入文档中。最常见的JavaScript DOM方法实战-修改文档树中,用到的appendChild()或insertBefore()将它们附加到文档树中。例如:

var nav=document.getElementById("nav");  //创建一个li新元素  var newChild=document.createElement('li');  //创建一个a 新元素  var newLink=document.createElement('a')  //创建一个 Text 节点  var newText=document.createTextNode('My Wiki');  //把Text添加到a元素节点中  newLink.appendChild(newText);  //给a元素节点设置属性href和内容  newLink.setAttribute('href',"#");  //把a元素节点添加到新的li元素节点中  newChild.appendChild(newLink);  //把新的li元素节点添加到 ul 元素节点里  nav.appendChild(newChild);

这先将文本节点附加到<a>中,然后再将包含文本节点的<a>附加到<li>中,***把包含<a>和文本的<li>附加到<ul>中。此时我的导航条ul中多了一个li子节点。

createTextNode()和HTML实体

createTextNode()有一个问题:它不能创建类似于&euro;(&euro; 欧元符号)&yen;(&yen; 人民币符号) &copy; (&copy; 版权符号)&#8220;(“左双引号)&#8221;(” 右双引号)等,这样的HTML实体元素。它会按字面创建文本,而不是创建你所需要的符号 。

<script  type="text/javascript"> window.onload=function(){   var x=document.createTextNode("&copy; Copyrights reserved");   document.getElementById("test").appendChild(x);  }  </script>

不过,我们可以使用innerHTML来代替:

<script  type="text/javascript"> window.onload=function(){   document.getElementById("test").innerHTML="&copy; Copyrights reserved";  }  </script>

关于innerHTML属性的用法,我们会在下一节中作为专题来具体的讨论。

cloneNode()

cloneNode()方法克隆一个节点,即它能对节点做一个***的复制,使你可以在随后将其插入到文档树中。导航条HTML代码:

<div id="menu">     <h2>我的导航条</h2>                <ul id="nav">        <li><a href="#">HOME</a></li>        <li><a href="#">(X)Html / Css</a></li>        <li><a href="#">Ajax / RIA</a></li>        <li><a href="#">GoF</a></li>        <li><a href="#">JavaScript</a></li>        <li><a href="#">JavaWeb</a></li>        <li><a href="#">jQuery</a></li>        <li><a href="#">MooTools</a></li>        <li><a href="#">Python</a></li>        <li><a href="#">Resources</a></li>     </ul> </div>

测试cloneNode()

<script  type="text/javascript"> window.onload=function(){       var nav_list=[];    var nav=document.getElementById("nav");       navnav_list=nav.getElementsByTagName("li");    var x=nav_list[0];    var y=x.cloneNode(true);    nav.appendChild(y);  }  </script>

要想正确的使用cloneNode(),你必须了解它的一下二个特征:

1. cloneNode()接受一个可选值为true或false的参数。True 表示克隆元素和它的所有子节点。False表示克隆元素但不包含它的子节点。通常,我们在实践中用true,我从来没有遇到过想要克隆一个节点但不包含它的子节点的情形。

2. cloneNode()不会克隆事件处理程序。这相当的让人恼火,不知道这个方法是怎么定义的(原因我也不知道)所以每次你克隆一个节点,你不得不在克隆上重新定义事件处理程序。

上述就是小编为大家分享的JavaScript 中怎么利用DOM创建和克隆元素了,如果刚好有类似的疑惑,不妨参照上述分析进行理解。如果想知道更多相关知识,欢迎关注创新互联行业资讯频道。

分享题目:JavaScript中怎么利用DOM创建和克隆元素
URL标题:https://www.cdcxhl.com/article46/gepeeg.html

成都网站建设公司_创新互联,为您提供软件开发定制网站服务器托管关键词优化标签优化网站营销

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联

手机网站建设