《jquery——如何使用jquery》

1_使用jquery操作DOM

<div>

            <p>111</p>

            <p>222</p>

            <p>333</p>

            <p>444</p>

            

        </div>

        

        <script src="js/jquery.js"></script>

        <script>

            //dom : 文档对象模型 就是HTML元素

            

            //js中如何操作DOM节点

            // document.write("<p>我是p标签</p>");      

            //缺点:无法在指定的位置生成元素

            

            

            //$() 函数的2个用法:

            //用法1:放入一个字符串(选择器)表示获取元素 例如$("p") $("#abc") $(".del")

            //用法2:放入一个函数,表示文档就绪函数 例如 $(function(){代码...})

            

            //用法3:如下所示

            

            //jquery创建节点的方法如下:

            //1.创建节点 语法如下:

            // $("xxxxx"); xxx表示你要创建的dom元素 例如 $("<p>我是p标签<p>");

            

            //此时仅仅是创建了节点.理解为是孤儿节点. 需要将其插入到某个节点中.

            //例如 放入body标签中 方法div标签中等等.

            

            

            //插入方法1:append() 表示插入到指定元素内部的尾端.

            //语法: $("aa").append("bb") 表示将bb插入到aa内部的尾端

            

            //需求如下:

            //在div的尾端插入一个值为555的p标签

            

            //1.创建一个值为555的p标签

            // let a = $("<p>555<p>");

            // //调用方法即可

            // $("div").append(a);

            

            

            //插入方法2:prepend() 表示插入到指定元素内部的首端.

            //语法: $("aa").prepend("bb") 表示将bb插入到aa内部的首端

            

            

            //需求如下:

            //在div的首端插入一个值为000的p标签

            // //1.创建一个值为000的p标签

            // let a = $("<p>000<p>");

            // //调用方法即可

            // $("div").prepend(a);

            

            

            

            //插入方法3:after() 表示插入到指定元素的后面. 兄弟关系

            //语法: $("aa").after("bb") 表示将bb插入到aa的后面

            

            

            //需求如下:

            //在111的后面插入一个1.5 1.5 1.5

            //1.创建一个值为000的p标签

            // let a = $("<p>1.5 1.5 1.5<p>");

            //调用方法即可

            // $("p:eq(0)").after(a);

            

            //插入方法4:before() 表示插入到指定元素的前面. 兄弟关系

            //语法: $("aa").before("bb") 表示将bb插入到aa的前面

            

            

            //需求如下:

            //在333的前面插入一个2.5 2.5 2.5

            //1.创建一个值为2.5 2.5 2.5的p标签

            // let a = $("<p>2.5 2.5 2.5<p>");

            //调用方法即可

            // $("p:eq(2)").before(a);

            

            

            //上述的方法 可以实现 在任意位置创建新的节点.

            

            

            //下述的方法 可以实现 删除任意位置的节点:

            

            //方法1: remove()

            //语法如下: $("xx").remove(); 将xx元素彻底删除 不仅删除了值 而且删除了标签

            

            //需求如下: 将444的p标签删除

            

            // $("p:eq(3)").remove();

            

            //方法2: empty() 清空

            //语法如下: $("xx").empty(); 将xx元素删除值 但是不删除标签

            

            //需求如下: 将444的p标签删除

            

            // $("p:eq(3)").empty();

            

            //克隆节点

            //语法: $("xxx").clone(); 将xxx元素复制一份

            //注意事项:上一步仅仅只是复制 此时理解为孤儿节点. 任然需要通过append prepend after before进行粘贴

            

            //例如:将111复制一份到444的后面

            

            let a = $("p:eq(0)").clone();

            $("p:eq(3)").after(a);

            

        </script>

2_无聊小案例1

<button>按钮</button>

        

        

        <script src="js/jquery.js"></script>

        <script>

            //需求如下:点击按钮,实现按钮的复制.1-2-4-8-16-32-64

            $("button").click(function(){

                // alert(123);

                let a = $("button:eq(0)").clone(true);

                

                $("button").after(a);

            });

            

            //备注:clone仅仅是复制了样式 如果想要复制功能 只需要在clone()加上一个true

            

            

            

            

            

        </script>

3_show和hide方法

<button>按钮</button> <br>

        <img src="img/0.jpg">

        

        <script src="js/jquery.js"></script>

        <script>

            

            //$("xx").hide();隐藏XX元素

            //$("xx").show();显示XX元素

            //$("xx").toggle();来回切换:显示或隐藏XX元素

            

            $("button").click(function(){

                

                // if($("img").css("display")=="inline"){

                //  $("img").hide();

                // }else{

                //  $("img").show();

                // }

                

                $("img").toggle();

                

                

                

                

            });

            

            

            

        </script>

4_addClass()和removeClass()方法

<style>

            .a{

                font-size: 50px;

            }

            

            .b{

                color: red;

            }

            

            .c{

                background-color: aqua;

            }

        </style>

        

    </head>

    <body>

        <p>你好</p>

        

        

        <script src="js/jquery.js"></script>

        <script>

            

            //$("xx").addClass("a");给元素添加类名为a

            //$("xx").removeClass("aa);给元素移除类名为a

            

            

            // $("p").addClass("a");

            // $("p").addClass("b");

            // $("p").addClass("c");

            

            //jquery对象的特点: 调用任意方法的返回值 依然是它本身

            $("p").addClass("a").addClass("b").addClass("c").click(function(){

                alert(123);

            }).mouseover(function(){

                alert(567)

            }).removeClass("c");

            

            

        </script>

    </body>

5_如何获取当前元素

        <button>按钮1</button>

        <button>按钮2</button>

        <button>按钮3</button>

        <button>按钮4</button>

        <button>按钮5</button>

        <button>按钮6</button>

        <button>按钮7</button>

        

        <script src="js/jquery.js"></script>

        <script>

            

            //$("xx").index();返回当前元素在兄弟中下标

            

            $("button").click(function(){

                // $(this);获取当前的元素

                alert( $(this).index() )  

            });

            

        </script>

 6_轮播图简化版

<style>

            img{

                width: 400px;

                height: 150px;

            }

            

            li{

                float: left;

                margin-left: 30px;

                color: pink;

            }

            

            ul{

                margin-left: 300px;

                margin-top: -20px;

                position: absolute;

            }

            

            

            

        </style>

    </head>

    <body>

        <div align="center">

            <img src="img/0.jpg" />

            <ul>

                <li></li>

                <li></li>

                <li></li>

                <li></li>

                <li></li>

                <li></li>

            </ul>

        </div>

        

        

        

        

        <script src="js/jquery.js"></script>

        <script>

            $("li").mouseover(function(){

                //获取当前li标签的下标

                let index = $(this).index();

                $("img").attr("src","img/"+index+".jpg");

                indexImg = index;

                $("li").css("color","pink");

                $("li:eq("+index+")").css("color","red");

            })

            

            

            var indexImg = 0;

            setInterval(function(){

                indexImg++;

                if (indexImg==6) {

                    indexImg = 0;

                }

                

                $("img").attr("src","img/" + indexImg +".jpg");

                

                

                $("li").css("color","pink");

                $("li:eq("+indexImg+")").css("color","red");

                

            },2000)

            

        </script>

    </body>

7_each方法讲解

<p></p>

        <p></p>

        <p></p>

        <p></p>

        <p></p>

                        

    

            

            

        

        <script src="js/jquery.js"></script>

        <script>

            

            //each方法的语法: $("xx").each( function(){ 代码体 } );

            //遍历xx元素.每遍历一次 就执行一次代码体.

            

            

            //这种写法 较为局限 但是也很重要

            // $("p").text("你好");

            

            

            var arr = ["这是第1条新闻","这是第2条新闻","这是第3条新闻","这是第4条新闻","这是第5条新闻"]

            

            $("p").each(function(){

                $(this).text( arr[$(this).index()] );

            });

            

            

            

            

        </script>

8_LOL选项卡特效

<style>

            div{

                width:400px;

                height: 300px;

                background-color: pink;

                margin: auto;

            }

            

            ul{

                list-style: none;

            }

            

            li{

                float: left;

                margin-left: 20px;

                font-size: 20px;

            }

            

            

        </style>

        

        

    </head>

    <body>

        

        <div>

            <ul>

                <li>综合</li>

                <li>公告</li>

                <li>赛事</li>

                <li>攻略</li>

                <li>社区</li>

            </ul>

            

            <br><br><br>

            

            <a href="#"> </a> <br><br>

            <a href="#"> </a> <br><br>

            <a href="#"> </a> <br><br>

            <a href="#"> </a> <br><br>

            <a href="#"> </a> <br><br>

            <a href="#"> </a> <br><br>

            

        </div>

        

        

        <script src="js/jquery.js"></script>

        <script>

            

            //暂时模拟去数据库拿数据

            

            let arr = [

                ["这是第1条综合数据~~~~~~~~~~","这是第2条综合数据~~~~~~~~~~","这是第3条综合数据~~~~~~~~~~","这是第4条综合数据~~~~~~~~~~","这是第5条综合数据~~~~~~~~~~","这是第6条综合数据~~~~~~~~~~"],

                ["这是第1条公告数据~~~~~~~~~~","这是第2条公告数据~~~~~~~~~~","这是第3条公告数据~~~~~~~~~~","这是第4条公告数据~~~~~~~~~~","这是第5条公告数据~~~~~~~~~~","这是第6条公告数据~~~~~~~~~~"],

                ["这是第1条赛事数据~~~~~~~~~~","这是第2条赛事数据~~~~~~~~~~","这是第3条赛事数据~~~~~~~~~~","这是第4条赛事数据~~~~~~~~~~","这是第5条赛事数据~~~~~~~~~~","这是第6条赛事数据~~~~~~~~~~"],

                ["这是第1条攻略数据~~~~~~~~~~","这是第2条攻略数据~~~~~~~~~~","这是第3条攻略数据~~~~~~~~~~","这是第4条攻略数据~~~~~~~~~~","这是第5条攻略数据~~~~~~~~~~","这是第6条攻略数据~~~~~~~~~~"],

                ["这是第1条社区数据~~~~~~~~~~","这是第2条社区数据~~~~~~~~~~","这是第3条社区数据~~~~~~~~~~","这是第4条社区数据~~~~~~~~~~","这是第5条社区数据~~~~~~~~~~","这是第6条社区数据~~~~~~~~~~"]

            ];

            

            

            

            $("li").mouseover(function(){

                

                //将所有的颜色都还原

                $("li").css("color" , "black");

                //悬停在哪里 就将li标签文字颜色改成蓝色

                $(this).css("color" , "blue");

                //将li标签对应的所有新闻展示出来

                //获取li标签的下标

                let index = $(this).index();

                

                let a_index = 0;

                $("a").each(function(){

                    

                    

                    //注意index方法返回的是当前元素在兄弟节点的下标

                    //由于a标签的兄弟不仅仅只有a还有ul标签和br标签

                    // 所以这里的值不为012345 而是一堆可能没规律的数

                    //解决方式:在外面加一个变量 负责计数

                    // let i = $(this).index();

                    // console.log(i);

                    

                    

                    $(this).text ( arr[index][ a_index++ ] ) ;

                    

                    

                    

                });

                

            });

            

            

            

            

            

        </script>

9_学生表格的CRUD

<style>

            

            td{

                width: 400px;

                height: 30px;

            }

            

            input{

                width: 100px;

            }

            

        </style>

    </head>

    <body>

        

        <a id="show_hide" href="#">折叠信息</a> <br>

        <table border="1px" style="border: 1px solid black;text-align: center;" cellpadding="0" cellspacing="0">

            <Tr>

                <Td>编号</Td>

                <Td>姓名</Td>

                <Td>年龄</Td>

                <Td>删除</Td>

            </Tr>

        </table>

        

        <a id="add" href="#">添加学生</a>

        

        <br>

        <div style="display: none;" id="add_student_form">

            编号:<input type="text" id="id" /><br>

            姓名:<input type="text" id="name" /><br>

            年龄:<input type="text" id="age" /><br>

             <button id="add_btn">添加</button> <br>

        </div>

        

        

        <script src="js/jquery.js"></script>

        <script>

            $("#show_hide").click(function(){

                //xx元素的显示或隐藏 通过show 或hide方法来实现

                //缺点:需要利用2个方法,且需要判断是显示还是隐藏

                //toggle自动的进行显示和隐藏的切换

                $("table").toggle();

            });

            

            //很多学生 通过数组来存储. 1个学生拥有多个属性肯定通过obj对象来实现

            //总结就是:声明一个数组,数组内部由多个obj对象实现

            //obj对象别名:在js中我们一般习惯性的将对象称为json对象 {"key" : "value"}

            //不管JSON对象的属性是什么类型 统一使用字符串类型(暂时不说为什么,因为是规范)

            

            var students = [

                {

                    "id" : "1001",

                    "name": "李四",

                    "age" : "20"

                },

                {

                    "id" : "1002",

                    "name": "王五",

                    "age" : "22"

                },

                {

                    "id" : "1003",

                    "name": "赵六",

                    "age" : "23"

                },

                {

                    "id" : "1004",

                    "name": "张三",

                    "age" : "18"

                }

            ];

            

            //遍历学生 然后输出到表格内部 渲染数据

            

            for(let i = 0 ;i<students.length;i++){

                $("table").append( $("<tr><td class='db'>" +students[i].id+"</td><td class='db'>" +students[i].name+"</td><td class='db'>" +students[i].age+"</td><td><a class='del' href='#'>删除</a></td></tr>") )

            }

            

            

            

            

            $("#add").click(function(){

                //思路:点击添加学生的超链接 显示一个新增学生的表单. 但是由于表单内部的元素较多.不方便使用append方法

                //所以:提前创建一个表单.通过显示或隐藏

                $("#add_student_form").toggle();

                

            })

            

            

            

            $("#add_btn").click(function(){

                $("table").append( $("<tr><td class='db'>" + $("#id").val() +"</td><td class='db'>" + $("#name").val() +"</td><td class='db'>" + $("#age").val() +"</td><td><a class='del' href='#'>删除</a></td></tr>") )

                $("#id").val("");$("#name").val("");$("#age").val("");

                $("#add_student_form").hide();

                

                $(".del").click(function(){

                    $(this).parent().parent().remove();

                })

                

                

                $(".db").dblclick(function(){

                    //先存好值

                    let val1 = $(this).text();

                    //将td内部的值 替换成一个input组件

                    $(this).html("<input class='update' type='text' >");

                    //自动获得焦点 备注:这里没有像往常一样还在内部写了一个funtion,因为这里的需求就是获取焦点

                    //此时焦点在文本框的首段 需要改成尾端

                    $(".update").focus().val(val1);

                    

                    $(".update").blur(function(){

                        let str = $(this).val();

                        $(this).parent().text(str);

                    })

                });

            })

            

            

            

            

            $(".del").click(function(){

                $(this).parent().parent().remove();

            })

            

            

            

            $(".db").dblclick(function(){

                //先存好值

                let val1 = $(this).text();

                //将td内部的值 替换成一个input组件

                $(this).html("<input class='update' type='text' >");

                //自动获得焦点 备注:这里没有像往常一样还在内部写了一个funtion,因为这里的需求就是获取焦点

                //此时焦点在文本框的首段 需要改成尾端

                $(".update").focus().val(val1);

                

                $(".update").blur(function(){

                    let str = $(this).val();

                    $(this).parent().text(str);

                })

                

                

                

            });

      

        </script>

10_客串知识点

   <div>

            <p>

                <font>啊啊啊</font>

            </p>

        </div>

        

        

        <input type="text" id="a" />

        <input type="text" id="b" />

        <input type="text" id="c" />

        

        <script src="js/jquery.js"></script>

        <script>

            $("#c").focus();

            

            

            //需求:删除font标签

            $("font").remove();

            

            //需求:删除p

            $("p").remove();

            

            //需求:删除font标签的父亲

            $("p").parent().remove();

            

            

        </script>

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值