• jQuery总结


    常用方法

    兄弟前后----多元素,父、子元素

    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <title>Title</title>
        <script src="https://cdn.bootcss.com/jquery/1.12.3/jquery.js"></script>
        <script >
            // .next()  获取节点之后的挨着得第一同辈元素
            // .next("div") 紧邻的第一个div标签
            // .nextAll() 获取节点之后的所有同辈元素
            //.prev()、  .prevAll()兄弟中之前的元素
            // .siblings() 获取所有同辈的兄弟节点
            // .children() 找子元素   所有子元素中查找,只从孩子元素中查找,不在孙子及以后查找
            // .parent() 找父元素
            //  .end() 返回最近一次"破坏性"操作之前的对象
            $(function () {
                $("#d3").next().css("background","red");//等价于下面
            //            $("#d3+p").css("background", "red");
            //            $("#d3").next("div").css("background", "red");//这样找不到
            //            $("#d3").nextAll().css("background", "yellow");
            //            $("#d3").nextAll("div").css("background", "yellow");
            //            $("#d3").siblings().css("background", "blue");
            //            $("#d3").children().text(666666666666);
            //            $("#d3").children().css("background", "pink");
            //            $("#d4").parent().css("background", "blue");
            //d3及之前的所有元素
            //            $("#d3").prevAll().css("background", "blue").end().css("background", "blue");//等价于下面
            $("#d3").prevAll().andSelf().css("background", "blue");
            })
    
        </script>
    
    </head>
    <body>
    <div>1111111
        <p>pp111111</p></div>
    <div>3333333</div>
    <div>5555555</div>
    <div id="d3">
        <div>dddddddddddd
            <div id="d4">aaaaaaaaa</div>
        </div>
        <div>qqqqqqqqqqqq</div>
        <p>pqpqpqpqpqpq</p>
    </div>
    <p>ppppp</p>
    <div>11111
        <div>aaaaaaaaaa</div></div>
    <div>22222</div>
    <div>33333</div>
    <div>44444</div>
    
    </body>
    </html>
    
    

    样式操作、光标、定时器

    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <title>Title</title>
        <style>
           .b1{
                 background-color:Yellow;
            }
    
           .bg{
               background-color: red;
           }
           .w{
                400px;
           }
           .color{
               color: blue;
           }
           .dark{
               background-color: black;
           }
        </style>
       <!-- <script src="jquery3.x.js"></script> -->
        <script src="https://cdn.bootcss.com/jquery/1.12.3/jquery.js"></script>
        <script>
            //     样式操作
            // 1. css(<style 设置行内样式)
            // 2. 类样式(设置标签的class属性)
            //        获取样式attr("class")  设置样式attr("class","myclass")  追加样式addClass("myclss")(不影响其他形式)
            //        移除样式removeClass("myclss")  切除样式.toggleClass("myclss")  (如果存在样式则去掉样式,如果没有则添加样式)
            //        判断是否存在样式hasClass("myclss")
            //        focus获得光标
            //        blur失去光标
            //        setInterval()定时器
            //        clearInterval()停止定时器
            //过滤:filter  实现很多对图片操作的效果(透明度)   IE才支持
            // 例如 给class属性重新赋值 $("txt").attr("class","bg")
            // 聚焦控件:
            //  .b1{
            //   background-color:Yellow
            //   }
            $(function () {
    //            $("input").focus(function () {
    //                $(this).addClass("b1").siblings().removeClass("b1");
    //            })
                    $("#btn").click(function () {
                        //给class属性重新赋值
    //                $("#txt").attr("class","bg");
                        //追加样式
                    $("#txt").addClass("bg").addClass("color");
                })
                $("#cx").click(function () {
    //                $("#txt").removeClass("bg");
                    //全部移除
                    $("#txt").removeClass();
                })
                $("#toggle").click(function () {
                    $("#txt").toggleClass("bg");
                })
                //网页开关灯
                $("#d1").click(function(){
                    $("body").toggleClass("dark");
                     //判断是否存在样式hasClass()
                    if($("body").hasClass("dark")){
                        $("#d1").val("开灯")
                    }
                    else{
                        $("#d1").val("关灯")
                    }
                })
            })
        </script>
    </head>
    <body>
    <input class="b1" type="text"><br>
    <input type="text"><br>
    <input type="text"><br>
    <input type="button" value="dianji" id="btn">
    <input type="button" id="cx" value="remove">
    <input type="button" id="toggle" value="toggle">
    <input type="text" id="txt" class="w"><br>
    <input type="button" id="d1" value="关灯">
    </body>
    </html>
    

    css()、val()、text()、html()、attr()区别

    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <title>Title</title>
        <script src="https://cdn.bootcss.com/jquery/1.12.3/jquery.js"></script>
        <script>
            //.css()  .val()表单元素使用,如:<input>  <option>    { .text()   .html()} 获取或设置两个标签之间的内容
            //.attr()  读取或设置元素的属性   .removeAttr() 删除、移除
    
            $("#div1").css("background", "red");//修改样式;: 行内样式  改变style属性
            $("#div1").css("background");//获得样式  前面得设置才能获取到
            $("#un").val(1111);//修改value
            $("#un").val();//获得value
            //以上两个方法封装了标签的两个属性    style和value
            $(function () {
                $("#d1").click(function () {
    //                $("#link").attr("href", "http://www.baidu.com");
                    //可以自定义属性
                    $("#link").attr("a1", 1111);
                })
                $("#d2").click(function () {
    //                $("#link").removeAttr("href");
                    alert($("#link").attr("a1"));
                })
            })
    
    
        </script>
    </head>
    <body>
    <input type="button" value="click" id="d1">
    <input type="button" value="remove" id="d2">
    <a id="link">百度</a>
    
    </body>
    </html>
    

    动态创建节点

    <!DOCTYPE html>
    <html lang="en">
    
    <head>
        <meta charset="UTF-8">
        <title>Title</title>
        <!-- <script src="jquery3.x.js"></script> -->
    
        <script src="https://cdn.bootcss.com/jquery/1.12.3/jquery.js"></script>
        <script>
            //        1.动态创建节点
            //            append()      $("#d1").append($link);把后面对象的添加到前面的容器
            //            appendTo()   $link.appendTo($("#d1")); 把前面的对象,添加到后面的容器
            //            prepend()     $("#d1").prepend($link);把后面的对象添加到前面容器(作用:内容之前或开始标签之后)
            //            prependTo()   $link.prependTo($("#d1"));把前面的对象,添加到后面的容器(作用:内容之前或开始标签之后)
            //            after()       $("#d1").after($link);    把标签添加到结束标签之后(兄弟节点)
            //            before()                                 把标签添加到开始标签之前(兄弟节点)
            //
            //        2.删除节点
            //            remove() $("#d3 li:last").remove();找到对象,并把这个对象删除,可以返回
            //            empty()  $("#d3 li:last").empty(); 清空标签之间的内容,节点还在
            $(function () {
                $("#btn").click(function () {
                    //动态创建a标签,在内存中
                    var $link = $("<a href='http://www.baidu.com'>百度</a>");
                    // 给动态生成的控件注册事件(直接拿到对象.click)
                    //                $link.click(function () {
                    //                    alert("abc") ;
                    //                    return false;
                    //                })
                    //想在页面上显示出来,调用append方法
                    //把a标签放到div中,div的结束标签之前
                    $("#d1").append($link);
                    debugger
                    $("#d1").prepend('111111')
                    //append方法用来在元素的末尾追加元素
                    $("#d1").after($link);
                    // $("#d1").before($link);
                })
                $("#d2").click(function(){
                    // $("#d3 li:last").remove();
                    $("#d3 li:last").empty();
                })
            })
        </script>
    </head>
    
    <body>
        <input type="button" name="name" value="create" id="btn" />
        <div id="d1"></div>
        <input id="d2" type="button" value="remove">
        <ul id="d3">
            <li>1</li>
            <li>2</li>
            <li>3</li>
        </ul>
    </body>
    
    </html>
    

    选择器

    基本选择器

    <!DOCTYPE html>
    <html lang="en">
    
    <head>
        <meta charset="UTF-8">
        <title>Title</title>
        <!-- <script src="jquery3.x.js"></script> -->
        <script src="https://cdn.bootcss.com/jquery/1.12.3/jquery.js"></script>
        <script>
            //规则:$(who).when({what})
            $(function () {
                //id选择器
                //$("#d1").css("background","red");
                //类选择器
                //$(".c1").css("background","green");
                //标签选择器
                //$("p").css("background","yellow");
                //jQuery中事件监听的写法:click()、leave()、focus()、blur()........
                //当输入域失去焦点 (blur) 时
                $("input").blur(function () {
                    $("input").css("background-color", "pink");
                });
                $(".c1").focus(function () {
                    $("p").text("zzzzzzz")
    
                })
                $("#d3").click(function () {
                    $("p").text("你们都是。。。。");
                })
                $("#d4").click(function () {
                    alert(111111111);
                    //取消后续内容的执行
                    //return false;
                })
                //复合选择器中间用(,)隔开
                $("#d1,.bg,p").css("background", "pink");
            })
        </script>
    </head>
    
    <body>
        <div id="d1">11111</div>
        <div id="d2">2222</div>
        <p id="p1">ppppp</p>
        <div class="c1">3333333</div>
        <div class="c1">44444</div>
        <div>
            <p class="c1">pppppp</p>
        </div>
        <div>55555</div>
        <input class="c1" type="text"><br>
        <input id="d3" type="button" value="anniu"><br>
        <a id="d4" href="http://www.baidu.com">百度</a>
    </body>
    
    </html>
    

    层次选择器

    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <title>Title</title>
        <!-- <script src="jquery3.x.js"></script> -->
        <script src="https://cdn.bootcss.com/jquery/1.12.3/jquery.js"></script>
        <script>
            //层次选择器
            //后代(空格 >)和兄弟(+ ~)
            //(1)$("div li")获取div下的所有li元素(后代,子、子的子。。。。)
            //(2)$("div>li")获取div下的直接li子元素.只在后代中找符合第二个选择器的元素,不能在子子后代..中找
            //(3)$("menuitem+div")获取样式名为menuitem之后的第一个div元素。+之后的紧挨的第一个元素,如果紧挨的第一个元素 不符合选择器,就不会找到
            //(4)$("menuitem~div")获取样式名为menuitem之后的所有div元素。~之后的所有符合选择器的元素   从后面兄弟节点中找,后面兄弟节点子节点的元素即使符合,也选不中
            $(function () {
                $("#d1 p").css("background", "red");
                $("#d1>p").css("background", "pink");
                //#d1之后的近邻的div
                $("#d1+div").css("background", "yellow");//这样就会找不到 紧挨着的符合选择器
                $("#d1+p").css("background", "yellow");
                $("#d1~p").css("background", "green");
    
            })
        </script>
    </head>
    <body>
    <div id="d1">d1d1ddd11
        <div>111111
            <p>ppppp</p>
        </div>
        <p>cccccccc</p>
    </div>
    <p>p1pp1p1p1p1p1</p>
    <div class="bg">222222</div>
    <p>p2p2p2pp2p2p2p2</p>
    <div>333333
        <p>666666</p>
    </div>
    <div>444444</div>
    <div>555555</div>
    </body>
    </html>
    

    基本过滤器

    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <title>Title</title>
        <!-- <script src="jquery3.x.js"></script> -->
        <script src="https://cdn.bootcss.com/jquery/1.12.3/jquery.js"></script>
        <script>
            //$("tr:first")               选择所有tr元素的第一个
            //$("tr:last")                选择所有tr元素的最后一个
            //$("tr:even")                选择所有的tr元素的第0,2,4... ...个元素(注意:因为所选择的多个元素时为数组,所以序号是从0开始)
            //$("tr:odd")                 选择所有的tr元素的第1,3,5... ...个元素
            //$("td:eq(2)")               选择所有的td元素中序号为2的那个td元素
            //$("td:gt(4)")               选择td元素中序号大于4的所有td元素
            //$("td:lt(4)")               选择td元素中序号小于4的所有的td元素
            //$(":header")                选择所有的h1.....h6元素
            //$("div:animated")           选择正在执行动画的<div>元素
            $(function () {
                $("input:first").css("background","red");
                $("input:last").css("background","yellow");
                $("input:even").css("background","pink" );
                //第4个
                $("input:eq(3)").css("width","90px");
                //前3个
                $("input:lt(3)").css("height","50px");
                $("input:not(:last)").val(111);
                $("input:gt(4)").css("background","gray");
                $(":header").css("font-size","30px");
                $("div:not(:first)").css("background","red");
                //倒数第3项的索引
                var index=$("input").length-3;
                //后两项
                $("input:gt("+index+")").css("background","aqua");//取变量的值("+index+")    gt("+index+")相当于gt(3)
            })
        </script>
    </head>
    <body>
    <h1>hhhhhh</h1><br>
    <input type="text"value=""><br>
    <input  class="bg" type="text" value=""><br>
    <input type="text" value=""><br>
    <input  id="d1" type="text" value=""><br>
    <input type="text" value=""><br>
    <input type="text" value=""><br>
    <input type="text" value=""><br>
    <input type="text" value=""><br>
    <input type="text" value=""><br>
    <div>33333
        <div>55555</div>
    </div>
    <div>4444</div>
    <h2>2222222</h2>
    </body>
    </html>
    

    属性过滤器

    <!DOCTYPE html>
    <html lang="en">
    <head>
    
        <meta charset="UTF-8">
        <title>Title</title>
        <script src="https://cdn.bootcss.com/jquery/1.12.3/jquery.js"></script>
        <!-- <script src="jquery3.x.js"></script> -->
        <script>
            //属性过滤选择器([])  用[]表示      多属性[][]    开始^=  结尾$=  不等!=   含有*=
            //$(div[id])选取有id属性的<div>
            //$(div[title=test]) 选取title属性为“test”的 <div>   $(div[title!=test])
            //$(div[id*=div])选取给定属性是以包含某些值的元素
            $(function () {
                $("input[id]").css("background-color", "red");
                $("input[type=text]").css("background-color", "pink");
                $("input[type=text][name=n1]").val(11111);
                $("input[id*=d]").val("dddddd");//含有这个字母的都选中
                $("input[class^=c]").css("background-color", "blue");
                $("input[name$=1]").val(22222);
                $("input[type!=text]").css("background-color", "green");
            })
        </script>
    </head>
    
    <body>
        <input id="d1" type="text"><br>
        <input id="d2" type="text"><br>
        <input class="c1" type="text"><br>
        <input class="c2" type="text"><br>
        <input type="button" value="button"><br>
        <input class="c3" type="button" value="click"><br>
        <input class="c3" type="button" value="click"><br>
        <input type="text" name="m1"><br>
        <input type="text" name="name"><br>
        <input type="text" name="name1"><br>
        <input id="d3" type="checkbox" /><br>
        <input class="c4" type="radio"><br>
        <input type="radio">
        <br/>
        <span>sss</span>
    </body>
    
    </html>
    

    表单过滤器

    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <title>Title</title>
        <!-- <script src="jquery3.x.js"></script> -->
        <script src="https://cdn.bootcss.com/jquery/1.12.3/jquery.js"></script>
        <script>
            //表单对象选择器(过滤器)
            //$("#form1:enabled")选取id为form1的表单内所有启用的元素   $("#form1:disabled")禁用
            //$("input:checked")选取所有选中的元素(Radio、CheckBox)
            //$(select option:selected)选取所有选中的选项元素(下拉列表)
            //表单选择器(:)   用:表示
            // $(":input")选取所有<input>、<textarea>、<select>和<button>元素,$("input")只选取<input>标签
            // $(":text")选取所有单行文本框,等价于属性选择器$("input[type=text]")
            // $(":password")选取所有密码框。同理:radio、 :checkbox、:submit、:image、:reset、:button、:file、:hidden
            // :diabled  :checked :selected   表单可以和限制条件一块使用。
    
            $(function () {
                $("input[type=text]:disabled").css("background-color", "red");
                $("input[type=text]:enabled").css("background-color", "pink");
    //            $("input[type=checkbox]:checked").css("background-color", "blue");
                $("select option:selected").css("background", "red");
                $(":text:disabled").css("background-color", "blue");
                $(":text:disabled[id!=d1]").css("background", "black");
                $(":password[name=123]:checked").val(2222);
    //            $(":button[id!=btn]").val(11);
    //            $("input[type=checkbox]:checked").removeAttr("checked");
                $(":radio:eq(3)").attr("checked", "true");
                $(":radio:eq(3)").attr("checked", "checked"); //checked true都可以,一般用true,比如没选中 就fasle了对应的
                $(".bg").click(function () {
                    alert($(":radio:checked").val());
    
                })
                //单选 多选框包装集 需要each(function(){ this是这个包装集中每个DOM对象 })  $对象.each  this表示DOM
                $("#btn").click(function () {
                    var i = "";
                  //实例的each,封装了$.each
                    $(":checkbox:checked").each(function () {
                       i += $(this).val() + ",";
                    })
                    alert(i);
                })
            })
    
        </script>
    </head>
    <body>
    <input id="d1" type="text" disabled="disabled"><br>
    <input id="d2" type="text" disabled="disabled"><br>
    <input class="c1" type="text"><br>
    <input class="c2" type="text"><br>
    <input id="btn" type="button" value="click"><br>
    <input class="bg" type="button" value="cl"><br>
    <input type="button" value="cli"><br>
    <!--<input type="checkbox" checked="checked"><br>-->
    爱好:<br>
    <input type="checkbox" name="c" value="w" > 玩
    <input type="checkbox" name="c" value="cf" >吃饭
    <input type="checkbox" name="c" value="sj">睡觉
    <input type="checkbox" name="c" value="ddd " >打豆豆
    <input type="checkbox" name="c" value="kds">看电视 <br>
    性别:<br>
    <input type="radio" name="sex" value="nan">男<br>
    <input type="radio" name="sex" value="nv">女<br>
    <input type="radio"><br>
    <input type="radio"><br>
    <input id="d4" type="text"><br>
    <select name="name" id="d3">
        <option selected="selected" value="">下拉1</option>
        <option value="">下拉2</option>
    </select><br>
    密码:<input type="password" name="123" value="111" checked="checked"><br>
    密码:<input type="password" name="234" value="111"><br>
    密码:<input type="password" name="123" value="111"><br>
    </body>
    </html>
    
  • 相关阅读:
    python学习日记——基本数据类型
    python学习日记——安装及初识
    STF平台探索
    fiddler基本操作梳理
    fly.js抛物线连续不断加入购物车
    判断是否存在某个字段hasOwnProperty
    vue中提示toFixed不是函数
    vue中父组件给子组件传值,子组件给父组件传值
    js判断用户的浏览器设备是移动端还是pc端
    css预处理器--sass学习($变量名)
  • 原文地址:https://www.cnblogs.com/zhuuuu/p/7505802.html
Copyright © 2020-2023  润新知