JQuery中DOM节点的操作与访问方法实例分析
本文实例讲述了JQuery中DOM节点的操作与访问方法。分享给大家供大家参考,具体如下:
Jquery中DOM节点的操作
已有对象.append(要添加的对象) 作为最后一个子元素添加 要添加的对象.appendTo(已有对象) prepend()/prependTo() 作为第一个子元素添加 已有元素.before(要添加的元素)/after() 在对象前面/后面添加新的元素,可用逗号分割添加多个元素 要添加的元素.insertBefore(已有元素)/insertAfter() .empty() 删除元素所有子节点 .remove(“selector”) 删除自身整个元素,可以添加筛选参数 .detach() 删除节点,并将其保存在返回对象中,之后可以再次调用添加 .clone() 克隆节点结构,选填参数true后会同时克隆节点的事件 old.replaceWith(new) new.replaceAll(old) 用旧元素替换新的元素 .wrap(parent) 将每个元素包裹一个父元素 .unwrap() 去除外层包裹 .wrapAll() 将所有元素包裹一个父元素 .wrapInner() 将每个元素内部包裹一个子元素
//通过DOM方法创建2个div元素
varpdiv=document.createElement('div')
varcdiv=document.createElement("div");
//给2个div设置不同的属性
pdiv.setAttribute('class','right')
cdiv.className='child'
cdiv.innerHTML="动态创建DIV元素节点";
//将cdiv作为第一个子元素添加到pdiv内
pdiv.appendChild(cdiv)
//绘制到页面body
varbody=document.querySelector('body');
body.appendChild(pdiv)
//通过JQuery创建html元素
vardiv=$("动态创建DIV元素节点
//删除整个class=test1的div节点
$(".test1").empty()
//删除p标签中class为test3的结点
$("p").remove(".test3");
//通过detach在页面删除元素,但是这个节点还是保存在内存中
varp=$("p").detach()
//给所有p元素增加一个div包裹
$('p').wrapAll('')
//去除p的父层元素
$('p').unwrap();
//所有div增加一个内层元素
$('div').wrapInner('')
JQuery结点访问
.children() 选中直接子节点,括号内可填选择器 .parent() 选中直接父节点,括号内可填选择器 .parents() 选中所有的祖先节点 .closest(selector) 向上查找最近的满足条件的祖辈元素 .find(selector) 选中所有满足条件的后代元素 .next() 选中紧邻下一个同辈节点,可选填选择器 .prev() 选中紧邻前一个同辈节点,括号内可选填 .siblings() 选中所有同辈元素,括号内参数可选 .add() 添加新的元素加入到选中集合 .each(function(index,element){this}) 对每个进行函数操作,提供三个参数
注:选择器返回多个结果的可以通过括号内的选择器进行筛选,例如$('.item-2').next(':first'),选中多个类名为item-2的下一个节点,但:first只筛选了第一个。若括号内不填选择器,则默认选中所有的结果。
//选中class=div的子代的最后一个元素,添加边框
$('.div').children(':last').css('border','3pxsolidblue')
//选中class=item-2的兄弟元素的最后一个,添加边框
$('.item-2').siblings(':last').css('border','2pxsolidblue')
例2、each的使用:
each方法
- listitem1
- listitem2
- listitem3