原生JS和jQuery中基本的节点操作
js中节点操作
**document.createElement()**
用来生成网页元素节点,参数为元素的标签名;
**document.createTextNode()**
用来生成文本节点,参数为所要生成的文本节点的内容;
**node.appendChild()**
接受一个节点对象作为参数,将其作为最后一个子节点,插入当前节点;
**node.hasChildNodes()**
返回一个布尔值,表示当前节点是否有子节点
**node.removeChild()**
接受一个子节点作为参数,用于从当前节点移除该子节点
**node.cloneNode()**
用于克隆一个选中的节点。
它接受一个布尔值作为参数,表示是否同时克隆子节点,默认是false,即不克隆子节点。
**注意:** 不会克隆绑定到该元素上的事件;
**node.innerHTML**
返回该元素包含的 HTML 代码。该属性可读写,常用来设置某个节点的内容;(不属于W3C DOM规范)
**node.innerText**
返回该元素包含的内容。该属性可读写
**node.nextElementSibling**
返回紧跟在当前节点后面的第一个同级Element节点,如果当前节点后面没有同级节点,则返回null;
**node.previousElementSibling**
返回紧跟在当前节点前面的第一个同级Element节点,如果当前节点前面没有同级节点,则返回null;
**node.parentElement**
返回当前节点的父级Element节点;
**node.childNodes**
返回一个NodeList集合,成员包括当前节点的所有子节点(注意空格回车也算)。
**node.firstChild**
返回树中节点的第一个子节点,如果节点是无子节点,则返回 `null。`
**node.lastChild**
返回该节点的最后一个子节点,如果该节点没有子节点则返回`null`。
属性操作
**node.getAttribute()**
返回当前元素节点的指定属性。如果指定属性不存在,则返回null;
**node.setAttribute()**
为当前元素节点新增属性。如果同名属性已存在
**node.hasAttribute()**
返回一个布尔值,表示当前元素节点是否包含指定属性
**node.removeAttribute()**
从当前元素节点移除属性
jq中节点操作
创建节点 $('<div></div'> 创建一个div标签
添加节点
append appendTo 在被选元素的结尾插入内容 父.append(子) 子.appendTo(父)
prepend prependTo 在被选元素的开头插入内容 父.prepend(子) 子.prependTo(父)
before insertBefore 在被选元素之后插入内容 后.before(前) 前.insertBefor(后)
after insertAfter 在被选元素之前插入内容 前.after(后) 后.insertAfter(前)
```
清空节点与删除节点
empty:清空指定节点的所有元素,自身保留(清理门户)
remove:相比于empty,自身也删除(自杀)
克隆节点
- 作用:复制匹配的元素
复制$(selector)所匹配到的元素(深度复制)
cloneNode(true) //原生js cloneNode 不传参数 克隆标签本身,传参数true 克隆标签本身以及内容
返回值为复制的新元素,和原来的元素没有任何关系了。即修改新元素,不会影响到原来的元素。
$(selector).clone();//克隆元素本身及后代
$(selector).clone(true);//克隆元素本身及后代以及绑定的事件
原生JS和jQuery中基本的节点操作的更多相关文章
- 原生 JS 与 jQuery 中的 AJAX
AJAX = Asynchronous JavaScript and XML(异步的 JavaScript 和 XML). AJAX 最大的优点是在不重新加载整个页面的情况下,可以与服务器交换数据并更 ...
- 原生js模拟jquery中的addClass和removeClass方法
js代码: //添加类 function addClass(obj,className) { if(obj.className == '') { //如果没有class obj.className = ...
- js和jquery中有关透明度操作的问题
在日常开发的网站中,常常会用到设置透明度问题,最简单的就是图片的淡入淡出效果.下面我介绍一下在原生js和jQuery中设置透明度的相关问题和注意点: 1 透明度样式设置 透明度在IE浏览器 ...
- JavaScript中函数和类(以及this的使用<重点>,以及js和jquery讲解,原生js实现jquery)
1.javascript中以函数来表示类: 一般函数是小写开头:function foo() 类开头是大写:function Foo() 实例化类: obj = new Foo() 其他属性就同类是一 ...
- 原生js和jquery实现图片轮播特效
本文给大家分享的是使用原生JS和JQ两种方法分别实现相同的图片轮播特效,十分的实用,也非常方便大家对比学习原生js和jQuery,有需要的小伙伴可以参考下. 1)首先是页面的结构部分对于我这种左右切换 ...
- 原生js和jquery实现图片轮播特效(转)
本文给大家分享的是使用原生JS和JQ两种方法分别实现相同的图片轮播特效,十分的实用,也非常方便大家对比学习原生js和jQuery,有需要的小伙伴可以参考下. 1)首先是页面的结构部分对于我这种左右切换 ...
- 原生JS与jQuery操作DOM对比
一.创建元素节点 1.1 原生JS创建元素节点 document.createElement("p"); 1.2 jQuery创建元素节点 $('<p></p&g ...
- 原生JS和jQuery操作DOM的区别小结
一.Js原生对象和jQuery实例对象的相互转化: (1).原生JS对象转JQ对象: $(DOM对象); (2). JQ对象转原生JS对象: $(DOM对象).get(index); //注意区分eq ...
- 原生js替换jQuery各种方法-中文版
原文https://github.com/nefe/You-D... 原生JS与jQuery操作DOM对比 You Don't Need jQuery 前端发展很快,现代浏览器原生 API 已经足够好 ...
随机推荐
- struts2 codebehind + actionPackages 实现Action零配置
1.jar包:struts2-codebehind-plugin-2.2.1.1.jar 2.struts.xml:<!-- codebehind中查找action的返回结果资源时的默认文件夹 ...
- CodeForces - 552E Vanya and Brackets —— 加与乘运算的组合
题目链接:https://vjudge.net/contest/224393#problem/E Vanya is doing his maths homework. He has an expres ...
- POJ 3071 Football:概率dp
题目链接:http://poj.org/problem?id=3071 题意: 给定n,有2^n支队伍参加足球赛. 给你所有的p[i][j],表示队伍i打败队伍j的概率. 淘汰赛制.第一轮(1,2)两 ...
- javascript(6)
javascript的冒泡排序 var arr=[5,0,-56,900,12]; //大的排序次数(arr.length-1) var flag=false; for(var i=0;i<=a ...
- 关于JDK安装javac失效的几个问题。
1.按照指南一步一步配置环境变量. 打开cmd,测试. 2.如果还是没有用,注意你的JAVA_HOME配置的是用户变量还是系统变量,改成系统变量. 打开cmd,测试. 3.如果还是没有用,不要你的JA ...
- rust borrow and move
extern crate core; #[deriving(Show)] struct Foo { f : Box<int> } fn main(){ let mut a = Foo {f ...
- Python 连接Oracle数据库
连接:python操作oracle数据库 python——连接Oracle数据库 python模块:cx_Oracle, DBUtil 大概步骤: 1. 下载模块 cx_Oracle (注意版本) ...
- OpenCV——PS滤镜算法之 球面化 (凹陷效果)
// define head function #ifndef PS_ALGORITHM_H_INCLUDED #define PS_ALGORITHM_H_INCLUDED #include < ...
- BZOJ-3881:Divljak (AC自动机+DFS序+树链求并+树状数组)
Alice有n个字符串S_1,S_2...S_n,Bob有一个字符串集合T,一开始集合是空的. 接下来会发生q个操作,操作有两种形式: “1 P”,Bob往自己的集合里添加了一个字符串P. “2 x” ...
- HP SiteScope安装
下载地址以及安装方法见 http://www.jianshu.com/p/fce30e333578 数据库连接URL:jdbc:mysql://mysql_ip:mysql_port/database ...