jQuery学习笔记5:操作DOM节点

简介:

1    插入节点

1.1 内部插入节点

wKioL1MB196QI4L0AAJhm4YH1uw744.jpg

样例:

   var box = (<divid="box"></div>);//('body').append(box);                            //插入节点
   (div).append(<strong>DOM</strong>);//indexdivhtmlindexdiv('div').append(function (index, html) {
       return '<strong>DOM</strong>' + index + html;
   });

   $('strong').appendTo('div');    //将strong节点移入div节点内部后面


1.2 外部插入节点

wKiom1MB3zrQIAdwAAJeHgjaGFg022.jpg

样例:

   (div).after(<strong>DOM</strong>);('div').after(function (index, html) {
       return '<strong>DOM</strong>' + index + html;
   });

   (div).before(<strong>DOM</strong>);('div').before(function (index, html) {
       return '<strong>DOM</strong>' + index + html;
   });

   (strong).insertAfter(div);('strong').insertBefore('div');



2    包裹节点

wKiom1MB4WHTl8bYAALm2U8WE18642.jpg

样例:

   (div).wrap(<strongclass="b"></strong>);//divstrong('div').wrap('<strong />');
   (div).wrap(<strong>123</strong>);('div').wrap('<strong><em></em></strong>');


   //DOM对象节点
   (div).wrap(('strong').get(0));
   $('div').wrap(document.createElement('strong'));


   //匿名函数
   $('div').wrap(function (index) {
       return '<strong>' + index + '</strong>'
   });


   (div).wrap(<strong><em></em></strong>);('div').unwrap();    //移除一层包裹内容,多个需要移除多次
   (div).unwrap();('div').wrapAll('<strong></strong>'); //所有DIV外面只有一层strong
   (div).wrapAll(document.createElement(strong));('div').wrapInner('<strong></strong>');  //包裹DIV内部内容
   (div).wrapInner(document.createElement(strong));('div').wrapInner(function (index) {
       return '<strong>' + index + '</strong>'
   });


3    复制、替换和删除节点

3.1 复制节点

   clone(true)参数可以为空,表示只复制元素和内容,不复制事件行为。而加上true参数的话,这个元素附带的事件处理行为也复制出来。

   $('div').click(function () {
       alert('ycku.com');
   });


   $('div').clone(true).appendTo('body');


3.2 删除节点

   .remove()不带参数时,删除前面对象选择器指定的元素。而.remove()本身也可以带选择符参数的,比如:$('div').remove('#box');只删除id=box 的div。

   .detach()删除节点,删除后在恢复时保留事件行为,而.remove()不保留。

   (div).remove();('div').remove('.box');


   alert((div).remove().get(0));('div').remove().appendTo('body');  //删除时恢复时不保留事件行为
   $('div').detach().appendTo('body');  //删除时恢复时保留事件行为


   .empty(),删除掉节点里的内容。

   $('div').empty(); //删除掉节点里的内容


3.3    替换节点
   (div).replaceWith(<span></span>);//divspan('<span>节点</span>').replaceAll('div'); //同上
注意:节点被替换后,所包含的事件行为就全部消失了。





     本文转自stock0991 51CTO博客,原文链接:http://blog.51cto.com/qing0991/1359916,如需转载请自行联系原作者







目录
打赏
0
0
0
0
348
分享
相关文章
DOM 节点列表长度(Node List Length)
DOM 节点列表长度(Node List Length)
深入了解jQuery:轻松实现高效的DOM操作
【10月更文挑战第11天】深入了解jQuery:轻松实现高效的DOM操作
107 0
HTML DOM 节点树
HTML DOM 节点是指在 HTML 文档对象模型中,文档中的所有内容都被视为节点。整个文档是一个文档节点,每个 HTML 元素是元素节点,元素内的文本是文本节点,属性是属性节点,注释是注释节点。DOM 将文档表示为节点树,节点之间有父子和同胞关系。
HTML DOM 节点
HTML DOM(文档对象模型)将HTML文档视为节点树,其中每个部分都是节点:文档本身是文档节点,HTML元素是元素节点,元素内的文本是文本节点,属性是属性节点,注释是注释节点。节点间存在父子及同胞关系,形成层次结构。
DOM 节点列表长度(Node List Length)
DOM 节点列表长度(Node List Length)
DOM 节点列表长度(Node List Length)
DOM 节点列表长度(Node List Length)
DOM 节点列表长度(Node List Length)
DOM 节点列表长度(Node List Length)
DOM 节点列表长度(Node List Length)
DOM 节点列表长度(Node List Length)
AI助理

你好,我是AI助理

可以解答问题、推荐解决方案等