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元素 var pdiv = document.createElement('div') var cdiv = document.createElement("div"); //给2个div设置不同的属性 pdiv.setAttribute('class', 'right') cdiv.className = 'child' cdiv.innerHTML = "动态创建DIV元素节点"; //将cdiv作为第一个子元素添加到pdiv内 pdiv.appendChild(cdiv) //绘制到页面body var body = document.querySelector('body'); body.appendChild(pdiv)
//通过JQuery创建html元素 var div = $("<div class='right'><div class='aaron'>动态创建DIV元素节点</div></div>"); $('body').append(div);
//删除整个 class=test1的div节点 $(".test1").empty() //删除p标签中class为test3的结点 $("p").remove(".test3"); //通过detach在页面删除元素,但是这个节点还是保存在内存中 var p = $("p").detach()
//给所有p元素增加一个div包裹 $('p').wrapAll('<div></div>') //去除p的父层元素 $('p').unwrap(); //所有div增加一个内层元素 $('div').wrapInner('<p></p>')
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', '3px solid blue') //选中class=item-2的兄弟元素的最后一个,添加边框 $('.item-2').siblings(':last').css('border', '2px solid blue')
例2、each的使用:
<!DOCTYPE html> <html> <head> <meta http-equiv="Content-type" content="text/html; charset=utf-8" /> <title></title> <style> .left { width: auto; height: 150px; } .left div { width: 150px; height: 120px; padding: 5px; margin: 5px; float: left; background: #bbffaa; border: 1px solid #ccc; } </style> <script src="/a1/uploads/allimg/200110/14394610M-0.jpg"></script> </head> <body> <h2>each方法</h2> <div class="left first-div"> <div class="div"> <ul> <li>list item 1</li> <li>list item 2</li> <li>list item 3</li> </ul> </div> <div class="div"> <ul> <li>list item 4</li> <li>list item 5</li> <li>list item 6</li> </ul> </div> </div> <br/> <button>点击:each方法遍历元素</button> <button>点击:each方法回调判断</button> <script type="text/javascript"> $("button:first").click(function() { //遍历所有的li //修改每个li内的字体颜色 $("li").each(function(index, element) { $(this).css('color','red') }) }) $("button:last").click(function() { //遍历所有的li //修改偶数li内的字体颜色 $("li").each(function(index, element) { if (index % 2) {//使用index参数 $(this).css('color','blue')//this形参指的是正在遍历的节点 } }) }) </script> </body> </html>
更多关于jQuery相关内容还可查看本站专题:《jQuery操作DOM节点方法总结》、《jQuery遍历算法与技巧总结》、《jQuery表格(table)操作技巧汇总》、《jQuery扩展技巧总结》、《jQuery常见经典特效汇总》、《jquery选择器用法总结》及《jQuery常用插件及用法总结》
希望本文所述对大家jQuery程序设计有所帮助。
上一篇:详解vue-router 动态路由下子页面多页共活的解决方案
栏 目:JavaScript
下一篇:vue项目实现图片上传功能
本文地址:https://www.xiuzhanwang.com/a1/JavaScript/9426.html
您可能感兴趣的文章
- 04-02javascript匿名,js匿名方法
- 04-02java中间代码生成器 java自动生成代码工具
- 01-10在Vue项目中使用Typescript的实现
- 01-10Vue中使用Lodop插件实现打印功能的简单方法
- 01-105分钟快速看懂ES6中的反射与代理
- 01-10jquery实现商品sku多属性选择功能(商品详情页)
- 01-10vue中根据时间戳判断对应的时间(今天 昨天 前天)
- 01-10Angular如何由模板生成DOM树的方法
- 01-10JavaScript中的相等操作符使用详解
- 01-10JQuery常用选择器功能与用法实例分析
阅读排行
本栏相关
- 04-02javascript点线,点线的代码
- 04-02javascript潜力,javascript强大吗
- 04-02javascript替换字符串,js字符串的替换
- 04-02javascript移出,js 移入移出
- 04-02包含javascript舍的词条
- 04-02javascript并行,深入理解并行编程 豆瓣
- 04-02javascript匿名,js匿名方法
- 04-02javascript警报,JavaScript警告
- 04-02javascript遮盖,JavaScript遮盖PC端页面
- 04-02javascript前身,javascript的前身
随机阅读
- 08-05dedecms(织梦)副栏目数量限制代码修改
- 01-10使用C语言求解扑克牌的顺子及n个骰子
- 04-02jquery与jsp,用jquery
- 01-11Mac OSX 打开原生自带读写NTFS功能(图文
- 01-11ajax实现页面的局部加载
- 01-10SublimeText编译C开发环境设置
- 08-05织梦dedecms什么时候用栏目交叉功能?
- 01-10delphi制作wav文件的方法
- 08-05DEDE织梦data目录下的sessions文件夹有什
- 01-10C#中split用法实例总结