# 查找节点
# 找自身
-
JS:JS 选择器(6 个不同的选择器)
-
JQ:$(“css 选择器”)
# 父节点 (往上面找)
-
JS:节点.parentNode;// 上一级
-
JQ
1
2
3
4
5
6
1. 对象.parent() 直接上级
2. 对象.parents(参数) 不加参数默认是到HTML,加参数可到参数父级结束
$("div").parents();//所有的祖先节点都找到
$("div").parents("body");//找到对应的那个祖先元素
# 子节点(往下面找)
-
JS
1
2
3
4
5
1. 节点.children;//数组,直接子元素
2. 节点.firstElementChild 找第一个
3. 节点.lastElementChild 找最后一个
-
JQ
1
2
3
4
5
6
7
8
1. 对象.children(选择器)
直接子级的集合,可设置参数过滤
2. 对象.find("选择器") 在对象内查找选择器匹配的节点
特点:找任意后辈节点
3. 对象.children(":first");
4. 对象.children(":last");
# 兄弟节点
-
JS
1
2
3
4
1. 节点.previousElementSibling;//上一个兄弟
2. 节点.nextElementSibling;//下一个 -
JQ
1
2
3
4
5
6
7
8
9
10
1. 上一个
对象.prev() 只返回前一个
对象.prevAll(选择器) 返回所有的哥哥辈元素
2. 下一个
对象.next() 只返回后一个
对象.nextAll(选择器) 返回后面的所有的兄弟元素
3. 所有的兄弟节点(除自己外)
对象.siblings(选择器)
# 创建节点
-
JS
1
2
3
4
5
var odiv=document.createElement("div");
odiv.innerText="内容";
odiv.title="属性"; -
JQ
1
2
3
4
5
6
7
8
9
10
11
12
1. 创建元素节点
语法:$("<标签名>")
如:var $li_0=$("<li></li>");
var $li_1=$("<li></li>");
2. 创建带文本的元素节点
如:var $li_0=$("<li>橘子</li>");
3. 创建带文本+属性的节点
如:var $li_0=$("<li class='red'>橘子</li>");
4. 创建带文本+属性+子节点:
如:var $li_0=$("<li class='red'><span>橘子</span></li>");
# 插入节点 (重点)
-
JS
1
2
3
4
5
6
1. JS-在某父节点内(前后)
父节点.apppendChild(新的子节点);
2. JS-在兄弟节点前后
父节点.insertBefore(新,旧);
-
JQ
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
1. JQ-在某父节点内(前后)
1. JQ后面:
a.$(父节点).append(子节点);
b.$(子节点).appendTo(父节点);//可以不记,快速记忆:to,到的意思,将子节点追加到父节点内部
2. JQ前面:
a.$(父节点).prepend(子节点);
b.$(子节点).prependTo(父节点);
2. JQ-在兄弟节点前后
1. JQ前面:
a.$(旧兄弟节点).before(新的兄弟节点); //在兄弟节点前插入新的兄弟节点
b.$(新的兄弟节点).insertBefore(旧兄弟节点);//将新兄弟节点插入到旧节点前
2. JQ后面:
a.$(旧兄弟节点).after(新的兄弟节点); //在兄弟节点后插入新的兄弟节点
b.$(新的兄弟节点).insertAfter(旧兄弟节点);//将新兄弟节点插入到旧节点后
# 删除节点
-
jS:父节点.removeChild (子节点);
-
JQ
1
2
3
4
5
6
1. 删除节点
$(要删除的节点).remove(); //彻底删除,包括它自己
2. 清空节点
$(要清空的节点).empty(); //将该节点内容清空,保留它自己
# 复制节点
-
JS:节点.cloneNode (true);// 添加 true 为深度复制,默认为浅复制
-
JQ:$(“要复制的节点”).clone (boolean); true 复制事件,默认为 false
# 替换节点
-
$(旧节点).replaceWith (新节点); // 旧节点被新节点替换
-
$(新节点).replaceAll (旧节点); // 新节点替换旧节点
# 包裹节点
-
将某个节点用其他元素包裹起来(单独包裹)。
1
2
3
4
$(子节点).wrap("父节点标签");
例子:$("p").wrap("<div></div>"); //用父节点把子节点包起来 -
将所有匹配的元素用另一个元素包裹起来(打包包裹)。
1
2
3
4
$(子节点).wrapAll("父节点标签");
例子:$("p").wrapAll("<div></div>"); //所有的p都会被div个打包 -
将每一个匹配的子内容用其他标记包裹起来。相当于是对 wrap 取相反。
1
2
3
$("父节点标签").wrapInner(子节点);
# 增删改查实例
# 简易微博
1 |
|
# 微博发布及评论
1 |
|