创建节点及节点属性
动态创建元素节点
DOM内部插入append()与appendTo()
因为是加入到ol里面,所以会发生错乱
好像只是位置变化,没有实质性的不同。
外部插入after()与before()
prepend()与prependTo()
跟append一样,只是前后颠倒;
都是插入到元素里面作为其子元素,因此图片元素里面不能插入文本元素
综合应用
外部插入insertAfter()与insertBefore()
删除元素remove(),empty()
empty()只删除子节点
remove()会将元素自身移除
表达式同$(“p”).remove(":contains(‘3’)") 表示删除含有3的p元素节点。里面的相当于选择器的表达方法
此外removeAttr和removeClass可以移除属性和类
保留数据的删除操作detach()
关键在于保留了事件和附加的数据,如鼠标点击事件,detach后再拿回来之前的事件还在,而remove拿回来之后事件不在,如果没有变量保存被删的元素,remove之后是不能通过append拿回来的
DOM拷贝clone()
DOM替换replaceWith()和replaceAll()
包裹wrap()方法
包裹unwrap()方法
unwrap()里面可以不加任何参数
wrapAll
arron1运行两次的结果为
<div>
<div>
<p>p元素</p>
<p>p元素</p>
</div>
</div>
arron2运行两次结果为<div> <p>p元素</p> </div> <div> <p>p元素</p> </div>
所以warpAll(function(){return '
'})
相当于wrap
wrapInner()方法
要插入很多元素时
可以自己创建标签
遍历之children()
find()方法
parent()方法
parents()方法
closest()方法
比如改变边框,parents会改变所有祖先元素的边框,而closest只会改变找到的第一个,不会再往上寻找。从当前元素开始表示可以找到自己
next()方法
紧邻表示紧跟着的下一个,按照文档顺序
prev()
和next()一样,只是按照文档顺序向上查找(上一个兄弟元素)
siblings()
图上level-2的ul与level-3不是兄弟元素,而下面两个level-3才是兄弟元素,才能siblings到
add()方法
.add(selector) 字符串值,表示查找供添加到匹配元素集合的元素的选择器表达式。
.add(elements) 添加到匹配元素集合的一个或多个元素。
.add(html) 添加到匹配元素集合的 HTML 片段。
.add(jQueryObject) 添加到匹配元素集合的已有 jQuery 对象。
.add(selector, context) selector:字符串值,表示查找供添加到匹配元素集合的元素的选择器表达式。context 选择器开始进行匹配的位置。
当加入html片段时需要加appendTo
通过DOM元素引用
没太搞明白
each()