一、创建和插入节点
var $div2 = $('<div>这是一个div元素</div>'); # 创建节点
1、父子元素节点插入
append()父元素里插入一个子元素节点
appendTo ()则是反过来,是子元素追加到父元素
prepend() 父元素前置插入一个子元素
prependTo() 则是反过来,将一个子元素前置插入父元素
2、元素外部插入同辈节点
..插入..后面
$("A").after($("B")) 在A之后插入B 在一个元素后面插入一个元素
$("B").insertAfter($("A")) 把B插入到A之后 把一个元素插入到另一个元素后面
..插入..前面
$("A").before($("B")) 在A之前插入B 在一个元素前面插入一个元素
$("B").insertBefore($("A")) 把B插入到A之前 把一个元素插入到另一个元素前面
二、删除节点
remove():删除整个节点
empty():清空节点内容
detach():删除整个节点,保留元素的绑定事件、附加的数据
remove和detach区别
remove和detach都可以把整个节点删除,删除完都会返回删除节点,区别在于remover不能保留元素的绑定事件,detach可以
三、替换节点
replaceWith()和replaceAll()
replaceWith()和replaceAll()用于替换某个节点
replaceWith() 要插入的内容写在后面
replaceAll() 要插入的内容写在前面
例如:
四、复制节点 clone()
clone()用于复制某个节点
clone 里面写false或者不写 不能克隆绑定的事件
只有写了true才能克隆绑定事件 点击克隆的元素也会有之前绑定的点击事件
例如:
这里克隆出的2不具有绑定事件
五、获取与设置元素属性 attr()
获取属性值或设置多个属性的值
表单元素中 获取值推荐使用prop
设置多个属性的值 $(selector).attr({name1:“value1”,nameN:“valueN”}) ;
图示:
拓展prop和attr:
attr
1、只适用于元素本身上的属性 例如 img标签本身具有的width height
2、适用于获取元素的自定义属性 返回对应的值
prop
1、表单元素上默认具有的属性推荐使用prop 勾选返回true 没有勾选返回false
2、方法不适用于元素自定义属性 因为会返回undefined
六、删除属性 removeAttr()
removeAttr()用来删除元素的属性
七、节点遍历
1、遍历子元素
children()
children()方法可以用来获取元素的所有子元素
格式:$(“元素”).children( );
不包含孙节点 只有子节点
jq连续点叫做jq的链式调用 原理是返回this
2、遍历同辈元素
jQuery可以获取紧邻其后、紧邻其前和位于该元素前与后的所有同辈元素
next( ) 用于获取匹配元素紧邻的下一个元素
prev( ) 用于获取匹配元素紧邻的上一个元素
slibings( ) 用于获取匹配元素紧邻上下所有元素
ES6 模板字符串
整体使用``包裹 变量使用$(变量名)
图例:
3、遍历前辈元素
jQuery中可以遍历前辈元素
parent():获取元素的一个父级元素
parents():获取元素的所有祖先元素 可以传参选定要找的其中一个祖先元素
parents()和closest()区别
closest()找到对应父级节点就停止了 性能更优
parents() 会把所有的节点都访问一遍 相比closest()浪费性能
图示:
closest()
parents()
4、其他遍历方法
each( )
each( ) :规定为每个匹配元素规定运行的函数
Index 元素的下标 从0开始
Element 当前的元素
$(selector).each(function(index,element)) ;
图例:
拓展:find()
返回被选元素的后代元素 后代是子、孙、曾孙,依此类推
八、CSS-DOM操作
1、可以设置和返回
height() / width()
可以设置和返回高度/宽度
scrollTop
通过scrollTop可以设置和获取垂直滚动条距离顶部的距离大小
scrollLeft
通过scrollLeft可以设置和获取水平滚动条距离左边的距离大小
注意:当滚动条设置大小过大 只返回页面最大可以设置的大小
2、只返回值不能设置
offset()
返回以像素为单位的top和left坐标
只对可见元素有效 如果元素有display=none 则获取不到
offsetParent()
返回最近的且已定位(absolute、relative、fixed)的祖先元素 获取不到会返回“html”
position()
返回第一个元素相对于父元素的位置