jQuery03筛选&文档处理

一.jQuery的筛选

                1.1  过滤

first()获取匹配的第一个元素
last()获取匹配的最后一个元素
eq(N)获取匹配的第N或N个元素
filter()筛选出与指定表达式匹配的元素集合
has()筛选出包含特定特点的元素集合
not()

筛选出不包含特定特点的元素集合  

        过滤的使用(代码仅供参考)

                //--过滤出指定表达式匹配的元素
                // 获取ul中所有的li元素,然后找到第一个元素
                $("ul>li:first").css("backgroud", "pinl");
                $("ul>li").first().css("background", "pink");

                // 找到最后一个元素
                $("ul>li").first().css("background", "pink");


                // 找到指定的某一个元素,例如第3个
                $("ul>li").eq(2).css("background", "pink");
                $("ul>li:eq(-2)").css("background", "pink");

                //--过滤出指定表达式匹配的元素集合
                // 找到属性title为a的元素
                $("ul>li").filter("[title][title=a]").css("background", "pink");

                // 筛选出有title属性的元素集合
                $("ul>li").filter("[title]").css("background", "pink");

                // 筛选出有<span>标签的元素集合
                $("ul>li").has("span").css("background", "pink");

                // 筛选出没有title属性的元素集合
                $("ul>li").not("[title]").css("background", "pink");

                     

           <body>
        <h2>补充知识点:位置</h2>
        <div id="aa">
            <div id="bb"></div>
        </div>
        <h2>jQuery03:筛选、文档处理</h2>
        <!-- 筛选和查找案例 -->
        <ul>
            <li>1</li>
            <li title="a">2</li>
            <li title="b">3</li>
            <li title="a"><span><b>4</b></span></li>
            <li title="b"><span>5</span></li>
            <ol>
                <li>6</li>
                <li>7</li>
            </ol>
            <span>8</span>
        </ul>
    </body>

                       1.2  查找

      

children()查找子标签
find()查找后代
parent()父标签
prevAll()前面所有的兄弟
nextAll()后面所有的兄弟
siblings()前后面所有的兄弟

                      查找的使用  (代码展示仅供参考)

                 // 查找ul的所有子标签,并且指定为li子标签
                $("ul").children("li").css("background", "pink");
                // 查找ul下面所有的span标签
                $("ul span").css("background", "pink");
                $("ul").find("span").css("background", "pink");
                // 查找b标签的父元素标签
                $("b").parent().css("background", "pink");
                // 查找第三个li标签前面所有的兄弟标签    
                $("ul>li").eq(2).prevAll().css("background", "pink");
                // 查找第三个li标签后面所有的兄弟标签,并且只能是li标签
                $("ul>li").eq(2).nextAll().css("background", "pink");
                // 查找第三个li标签所有的兄弟标签
                $("ul>li").eq(2).siblings().css("background", "pink");               

                        

   <body>
        <div id="aa">
            <div id="bb"></div>
        </div>
        <h2>jQuery03:筛选、文档处理</h2>
        <!-- 筛选和查找案例 -->
        <ul>
            <li>1</li>
            <li title="a">2</li>
            <li title="b">3</li>
            <li title="a"><span><b>4</b></span></li>
            <li title="b"><span>5</span></li>
            <ol>
                <li>6</li>
                <li>7</li>
            </ol>
            <span>8</span>
        </ul>
    </body>

二.文档处理

                 2.  内部插入&外部插入&删除&修改

append()将内容添加到指定的元素后面
appendTo()和append()颠倒
prepend()将内容添加到指定的元素前面
prependTo()和prepend()颠倒
after()在匹配元素之后插入内容
before()在匹配元素之前插入内容
empty()

删除匹配元素集合中所有的子节点(不包含匹配元素)

remove()

删除匹配元素集合中所有的子节点(包含匹配元素)

replaceWith()将所有匹配的元素替换成指定的内容

                //--内部插入(前面和后面)
                //   插入到最后面(给ul中最后一个li中插入一个a标签)
                $("ul>li:last").append("<a href='#'>大炮</a>")
                $("<a href='#'>大炮</a>").appendTo();
                //   插入到最前面(给ul中第一个li中插入一个a标签)
                $("ul>li:last").prepend("<a href='#'>大炮</a>")
                $("<a href='#'>大炮</a>").prependTo();

                //--外部插入(之前和之后)
                //   在属性title为b的li前面插入一个a标签
                $("ul>li").filter("[title=b]").before("<a href='#'>大炮</a>");
                //   在属性title为b的li后面插入一个a标签
                $("ul>li").filter("[title=b]").after("<a href='#'>大炮</a>");

                //2.2 改                
                //把li下面所有的span标签替换为<a>标签
                $("li span").replaceWith("<a href='#'>大炮</a>");
                //2.3 删                
                //清空ul中所有li的内容
                $("ul li").empty();
                //移除ul中所有的li
                $("ul li").remove();

 <body>
        <div id="aa">
            <div id="bb"></div>
        </div>
        <h2>jQuery03:筛选、文档处理</h2>
        <!-- 筛选和查找案例 -->
        <ul>
            <li>1</li>
            <li title="a">2</li>
            <li title="b">3</li>
            <li title="a"><span><b>4</b></span></li>
            <li title="b"><span>5</span></li>
            <ol>
                <li>6</li>
                <li>7</li>
            </ol>
            <span>8</span>
        </ul>
    </body>

补充知识点:位置

(代码块展示)

<style type="text/css">
			#aa {
				width: 200px;
				height: 200px;
				background-color: red;
				position: absolute;
				top: 50px;
				left: 50px;
			}

			#bb {
				width: 100px;
				height: 100px;
				background-color: yellow;
				position: absolute;
				top: 50px;
				left: 50px;
			}
		</style>

        <script>
                var a = $("#aa").offset();
				console.info(a.top, a.left);
				var b = $("#aa").position();
				console.info(b.top, b.left);
        </script>
        <body>
		<h2>补充知识点:位置</h2>
		<div id="aa">
			<div id="bb"></div>
		</div>
	    </body>

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值