jQuery基础(二)—DOM篇

jQuery节点创建与属性的处理

//通过jQuery生成div元素节点
        var div = $("<div class='right'><div class='aaron'>动态创建DIV元素节点</div></div>")
        $body.append(div)

DOM内部插入append()与appendTo()


append()是受,appendTO()是攻。

DOM外部插入after()与before()

append是一起挤挤,before,after是自己带个小板凳

DOM内部插入prepend()与prependTo()

(爹).prepend(大儿子)   主动收一个大儿子

(大儿子).prependto(爹)   主动来认爹当大儿子

DOM外部插入insertAfter()与insertBefore()

DOM节点删除之empty()的基本用法


$("button").on('click', function() {
        //通过empty移除了当前div元素下的所有p元素
        //但是本身id=test的div元素没有被删除
        $("#test").empty()
    })

DOM节点删除之remove()的有参用法和无参用法

remove会删除div,empty只是清空了div的内容,div本身还存在。就好像empty只是把可乐倒了装可乐的瓶子还留着,remove直接把可乐瓶一起丢了

DOM节点删除之保留数据的删除操作detach()

DOM拷贝clone()

detach是剪切的话,clone就是复制了 

DOM替换replaceWith()和replaceAll()

with是受  a.with.b 就是a被b替换

all是攻   b.all.a 就是b把a替换

DOM包裹wrap()方法

在集合中匹配的每个元素周围包裹一个HTML结构

DOM包裹unwrap()方法

.remove()是自杀,.empty()是自宫, 而这个unwrap就是自脱衣

DOM包裹wrapAll()方法

用wrap也可以给所有p元素增加div,但不是同一个div。而wrapALL能给所有p元素增加一个共同的div

DOM包裹wrapInner()方法

记住:wrap()穿外套,wrapInner()穿内衣!

$(".aaron1").on('click', function() {
        //给所有class=right1的div元素,增加内部包裹父容器p
       $('.right1').wrapInner('<p></p>');
    })

jQuery遍历之children()方法


 $("#bt2").click(function() {
        //找到所有class=div的元素
        //找到其对应的子元素ul,然后筛选出最后一个,给边宽加上颜色
        $('.div').children(':last').css('border', '3px solid blue')
    })
.children() 找儿子
之前的:
.detach() 隐身
.remove 自杀
.empty 身体被掏空
.clone 复制 (true全复制 false 浅复制,无事件)
.replaceWith 删除并替换节点(结合.replaceAll()来记)
.wrap 每个人加个爸爸
.unwrap 爸爸没了
.wrapAll 所有人加个爸爸
.wrapAll(function)每个人加个爸爸
.wrapInner 加个儿子

jQuery遍历之find()方法


    $("button:last").click(function() {
        //找到所有p元素,然后筛选出子元素是span标签的节点
        //改变其字体颜色
        var $spans = $('span');
        $("p").find($spans).css('color', 'red');
    })

jQuery遍历之parent()方法

.children() 找儿子

.find() 找后代

jQuery遍历之parents()方法

    $("button:last").click(function() {
        //找到当前元素的所有祖辈元素,筛选出class="first-div"的元素
        //并且附上一个边
        $('.item-b').parents('.first-div').css('border', '2px solid blue')
    })

jQuery遍历之closest()方法

.closest(),首先从本身开始向上匹配,若匹配到符合要求的第一个,即停止匹配。

.parents(),从元素父级一直向上匹配,找出所有匹配的符合要求元素。

jQuery遍历之next()方法


    $("button:last").click(function() {
        //找到所有class=item-3的li
        //然后筛选出第一个li,加上蓝色的边
       $('.item-2').next(':first').css('border', '1px solid blue')
    })

jQuery遍历之prev()方法


    $("button:last").click(function() {
        //找到所有class=item-2的li
        //然后筛选出最后一个,加上蓝色的边
       $('.item-3').prev(':last').css('border', '1px solid blue')
    })

jQuery遍历之siblings()


  $("button:last").click(function() {
        //找到class=item-2的所有兄弟节点
        //然后筛选出最后一个,加上蓝色的边
       $('.item-2').siblings(':last').css('border', '2px solid blue')
    })

jQuery遍历之add()方法


    $("button:first").click(function() {
         //把p元素添加到li的合集中
         $('li').add('p').css('background', 'red')
    })

jQuery遍历之each()


    $("button:first").click(function() {
        //遍历所有的li
        //修改每个li内的字体颜色
        $("li").each(function(index, element) {
            $(this).css('color','red')
        })

    })

.html(),.text(),.val()的区别:

.html(),.text(),.val()三种方法都是用来读取选定元素的内容;只不过.html()是用来读取元素的html内容(包括html标签),.text()用来读取元素的纯文本内容,包括其后代元素,.val()是用来读取表单元素的"value"值。其中.html().text()方法不能使用在表单元素上,.val()只能使用在表单元素上;另外.html()方法使用在多个元素上时,只读取第一个元素;.val()方法和.html()相同,如果其应用在多个元素上时,只能读取第一个表单元素的"value"值,但是.text()和他们不一样,如果.text()应用在多个元素上时,将会读取所有选中元素的文本内容。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值