JQ追加元素:

<body>
    <ul>
        <li>大渊</li>
        <li>二渊</li>
        <li>小渊</li>
    </ul>
    <script src="./jquery/jquery.min.js"></script>
    <script>
        /* 
            在JQuery创建一个元素
                $("html元素")
                    比如:
                        $("<li></li>")
                        $("<div>我是一个div</div>")
        */
       let li = $("<li></li>")
       li.html("充话费送的")



       /* 
            追加一个元素
                父元素.append("新的子元素");
                    比如:
                        $("ul").append(li); //li是新创建的
                追加的位置是在父元素的末尾
       */
        //   $("ul").append(li)




        /* 追加还有另外一个写法 to
                新的子元素.appendTo("父元素")
                    li.appendTo("父元素")   //li是新创建的
                        比如:
                            li.appendTo($("ul"))
        */
        // li.appendTo($("ul"))



        /* 
            prepend
                追加到最前面
                    父元素.preprend(新的儿子)
                    比如:
                        $("ul").prepend(li)
        */
        //    $("ul").prepend(li)


        
        // prependTo
        /* 
            新的子元素.prependTo("父元素")
                比如:
                    li.prependTo($("ul"))
        */
        li.prependTo($("ul"))

    </script>
</body>

  

JQ追加相邻的元素:

<body>
    <ul>
        <li>大渊</li>
        <li id="ey">二渊</li>
        <li>三渊</li>
    </ul>
    <script src="./jquery/jquery.min.js"></script>
    <script>
        /* 创建li标签 */
        let li = $("<li>垃圾桶捡来的</li>")

        //添加哥哥 before
            // 比如: 标签.before("新的哥哥")
        // $("#ey").before(li)

        //还有另外一种写法
            // 比如: 新的哥哥.insertBefore(标签)
        // li.insertBefore("#ey")


        //添加弟弟 after
            // 比如:标签.after(新的弟弟)
        // $("#ey").after(li)

        // 还有另外一种写法
            // 比如:新的弟弟.insertAfter("哥哥")
        li.insertAfter($("#ey"))
    </script>
</body>

  JQ克隆和修改:

<body>
    <ul>
        <li>1</li>
        <li id="e">2</li>
        <li>3</li>
    </ul>
    <script src="./jquery/jquery.min.js"></script>
    <script>
        /* 
            replaceWith
                老元素.replaceWith(新元素)
        */
        //创建一个p标签
        // let li = $("<p>我要替换你</p>")
        // $("div").replaceWith(li)

        /* 
            replaceAll
                新元素.replaceAll(老元素)
        */
        //    li.replaceAll($("div"))

        /* 克隆一
            let newElement = 元素.clone()
        */
        //克隆 
        $("#e").click(function(){
            window.alert("我是一个事件")
        })

        //这种克隆没有事件
        // let newClone = $("#e").clone()
        // console.log(newClone);
        //克隆完了,扔到ul的最后面
        // $("ul").append(newClone)


        /* 
            克隆二
                元素.clone(true)  //表示把事件也给克隆了
        */
        let newClone1 = $("#e").clone(true)
        $("ul").append(newClone1)
    </script>
</body>

  JQ清空和删除标签:

<body>
    <ul>
        <li>1</li>
        <li>2</li>
        <li>3</li>
    </ul>
    <script src="./jquery/jquery.min.js"></script>
    <script>
        /* 删除标签有两种
                empty();    //空的意思
                remove();   //移出
        */
        /*
            删除标签里面的内容
        */
        //    $("body").empty();
        // $("ul").empty();

        /*
            干掉这个标签
        */
        // $("body").remove();
        // $("ul").remove();
    </script>
</body>

  JQ操作尺寸:

  <style>
        *{
            margin: 0;
            padding: 0;
        }
        div{
            width: 300px;
            height: 300px;
            padding: 100px;
            margin: 200px;
            border: 50px solid red;
            background-color: springgreen;
        }
    </style>
</head>
<body>
    <div>我是一个div</div>
    <script src="./jquery/jquery.min.js"></script>
    <script>
        /* 
            读写取盒子的宽和高
                width和height 没有参数是获取,一个参数是设置
        */
        //    $("div").width(80)
        //    $("div").height(100)
        //    console.log(typeof $("div").width());
        //    console.log($("div").width());
        //    console.log($("div").height());

        /* 获取内容+内边距 */
        // innerHeight  内容+内边距的高
        // innerWidth   内容+内边距的宽 注意:不能设置
        // console.log($("div").innerHeight());
        // console.log($("div").innerWidth());

        /* 获取内容+内边距+边框 */
        // outerHeight
        // outerWidth
        // console.log($("div").outerHeight());
        // console.log($("div").outerWidth());


        /* 获取内容+内边距+边框+外边距 */
        // outerHeight(true)
        // outerWidth(true)
        // console.log($("div").outerHeight(true));
        // console.log($("div").outerWidth(true));
    </script>
</body>

  JQ操作元素的位置:

    <style>
        *{
            padding: 0;
            margin: 0;
        }
        body{
            height: 2000px;
            width: 2000px;
        }
        div{
            width: 200px;
            height: 200px;
            margin: 100px;
            padding: 100px;
            border: 10px solid red;

            /* position: fixed; */
            /* position: relative; */
            /* position: absolute;
            top: 150px;
            left: 150px; */
        }
    </style>
</head>
<body>
    <div>我是一个div</div>
    <script src="./jquery/jquery.min.js"></script>
    <script>
        // scroll  滚动事件
        $(window).scroll(function(){
            /* 
            $("div").offset()   读取到的是一个对象
                                        top
                                        left
            */
            // $("div").offset({top:111,left:111}) //可以设置设置的时候,传的是一个对象
            // console.log($("div").offset());  //浏览器的文档流来计算位置的    读取到的就是left,top值和定位没有关系



            //定位
            // console.log($("div").position());

            // 不计算当前的窗口
            // scrollTop  
            // console.log($(window).scrollTop());
            // console.log($(window).scrollLeft());
        })
    </script>
</body>

  jq鼠标跟随:

  <style>
        *{
            margin: 0;
            padding: 0;
        }
        .box{
            width: 500px;
            height: 150px;
            border: 5px solid #000;
            margin: 50px auto;

            display: flex;
            align-items: center;
            justify-content: space-evenly;
        }
        .box p{
            width: 100px;
            height: 100px;
        }
        img{
            width: 100%;
            height: 100%;
            display: block;
        }
        span{
            width: 200px;
            height: 200px;
            display: none;
            position: relative;
            top: 0;
            left: 0;
        }
    </style>
</head>
<body>
    <div class="box">
        <p><img src="./img/1.png" alt=""></p>
        <p><img src="./img/2.png" alt=""></p>
        <p><img src="./img/3.png" alt=""></p>
    </div>
    <span>
        <img src="./img/1.png" alt="">
    </span>
    <script src="./jquery/jquery.min.js"></script>
    <script>
        /* 
            1.鼠标移入到img当中,显示span
            2.显示的是我放入的那个标签上面的那个图片
                想办法获取到那个图片
                    $(".box p").find("img").attr("src")
                将我们获取到那张图片放入到span里面的img里面去
            3.获取鼠标的坐标
                pageX   ☆
                cliantX
                offsetX
                将我的坐标通过offset设置span的top和left值
        */
        $(".box p").hover(function(){
            /* 鼠标移入的时候,需要显示span */
            // window.alert("鼠标移入了")
            $("span").show(10);
        },function(){
            $("span").hide(10);
            // window.alert("鼠标移出了")
        }).mousemove(function(e){
            // console.log($(this).find('img').attr("src"));
            $("span img").attr("src",$(this).find('img').attr("src"))

            // console.log("pageX",e.pageX,e.pageY);
            // console.log("clientX",e.clientX,e.clientY);
            // console.log("offsetX",e.offsetX,e.offsetY);
            $("span").offset({top:e.pageY+10,left:e.pageX+10})
        })
    </script>
</body>

  jq通讯录:

<body>
    <ul>
        <li>
            我的祖宗
            <ol>
                <li>文政</li>
                <li>文彻</li>
                <li>文民</li>
            </ol>
        </li>
        <li>
            我的同事
            <ol>
                <li>马云</li>
                <li>马化腾</li>
                <li>马冬梅</li>
            </ol>
        </li>
        <li>
            我的小弟
            <ol>
                <li>普京</li>
                <li>泽连斯基</li>
                <li>陈锦</li>
            </ol>
        </li>
    </ul>
    <script src="./jquery/jquery.min.js"></script>
    <script>
        //1.默认的情况下隐藏ol li
        $("ol>li").hide();
        $("ul>li").click(function(){
            /* 点击显示的this下面的ol li */
            $(this).find("ol>li").toggle(500)

            $(this).siblings().find("ol>li").hide(500);
        })
    </script>
</body>

  

版权声明:本文为wugan原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://www.cnblogs.com/wugan/p/16250570.html