zoukankan      html  css  js  c++  java
  • Python学习 Day 049

    主要内容:

    1.jQuery的文档操作

    2.

    1.jQuery的文档操作

    1.1插入操作

    //语法:
    父元素.append(子元素)
    //解释:追加某元素,在父元素中添加的子元素.子元素可以为:
     stirng | element(js对象) | jquery元素

    代码示例

        <title>Title</title>
    </head>
    <body>
    <input type="text">
    <button id="append">追加</button>
    <ul class="comment">
        <li>倚天屠龙记</li>
    </ul>
    <script src="./libs/jquery-3.3.1.js"></script>
    <script>
        $(function(){
            //追加字符串
            $('.comment').append('<li id="item">张无忌</li>')
    
            $("#item").click(function(){
                alert($(this).text());
            });
            //追加js对象
            var li = document.createElement("li")
            li.innerText = "谢逊";
            $(".comment").append(li);
    
            //如果是jquery对象,相当于移动操作
            setTimeout(function(){
                $(".comment").append($("li").eq(0));
            },2000);
    
            $("<li>周芷若</li>").appendTo(".comment").click(function(){
                alert($(this).html())
            })
        })
    </script>

    (1) 前置插入

    // 语法:
    父.prepend(子)
    子.prepenTo(父)
    <script src="./libs/jquery-3.3.1.js"></script>
    <script>
        $(function(){
            //前置追加
            $("#prepend").click(function(){
                //获取content值
                let content = $('input[type=text]').val();
                $('.comment').prepend(`<li>${content}</li>`);
                //两种添加方式
                //$(`<li>${content}</li>`).prependTo('.comment');
            })
        })
    
    </script>

    (2)后置追加

    <script src="./libs/jquery-3.3.1.js"></script>
    <script>
        //后置追加
         $("#append").click(function(){
            let content = $("input[type=Text]").val();
            if(!content){
                return;
            }
             $('.comment').append(`<li>${content}</li>`);
        })
    </script>

    (3)兄弟追加(后)

    目标兄弟.after(要插入的兄弟)
    要插入的兄弟.inertAfter(目标兄弟)
    <script src="./libs/jquery-3.3.1.js"></script>
    <script>
        $("#after").click(function(){
            let content = $('input[type=text]').val();
            //第一种写法
            $("#item").after(`<li>${content}</li>`);
            //第二种写法
            $(`<li>${content}</li>`).insertAfter("#item")
        })
    </script>

    (4)兄弟追加(前)

    //语法
    
    目标兄弟.before(要插入的兄弟)
    要插入的兄弟.inertBefore(目标兄弟)

    1.2删除和清空

    //删除
    $(seletor).remove();//删除整个标签 事件也删除
    $(seletor).detach()//删除整个标签 事件保留
    
    //清空
    $(seletor).empty();
    $(seletor).html('');
    $(seletor).text('');

    删除代码

    <script src="./libs/jquery-3.3.1.js"></script>
    <script>
        $("#del").click(function(){
            alert(1);
            //remove()删除,表示整个标签都删除(事件也删除)
            // $("ul").remove();
            var jbtn = $(this).remove();
            $(".comment #item").append(jbtn)
        });
    
    
        //detach 删除标签,事件不删除
        $("#detach").click(function(){
            alert(1);
          var jbtn =  $(this).detach();
          console.log(jbtn);
          $('.comment #item').append(jbtn)
    
        })

    清空代码

    <script src="./libs/jquery-3.3.1.js"></script>
    <script>
        $(function(){
            //清空父级元素的子内容
            $('#empty').click(function(){
                // $(".comment").empty();
                // $(".comment").html("");
                $(".comment").text("");
            })
        })
    </script>

    1.3 替换

    <script src="./libs/jquery-3.3.1.js"></script>
    
    <script>
        $(function(){
            $("#replace").click(function(){
                $(".comment li a ").replaceWith('<span>1</span>')
            })
        })
    </script>

    2.事件

    (1)常见事件

    • onclick :   点击事件
    • ondblclick
    • onmouseover
    • onmouseout
    • onmouseenter
    • onmouseleave
    • onload
    • onresize
    • onscroll
    • onfocus
    • onblur
    • oninput

    (2)事件监听

       DOM的2级事件

    • 事件捕获
    • 处于目标阶段
    • 事件冒泡阶段
    oDiv.onclick = function(){};
    等价于
    //false 表示没有捕获阶段  处于目标 冒泡
    oDiv.addEventLister('click',function(){},false);

    事件流

    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <title>Title</title>
    </head>
    <body>
    
    </body>
    </html><!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <title>事件流</title>
        <script>
    
            window.onload = function () {
    
                var oBtn = document.getElementById('btn');
    
                //1
                document.addEventListener('click', function () {
                    console.log('document处于事件捕获阶段');
                }, true);
    
                //2
                document.documentElement.addEventListener('click', function () {
                    console.log('html处于事件捕获阶段');
                }, true);
    
                //3
                document.body.addEventListener('click', function () {
                    console.log('body处于事件捕获阶段');
                }, true);
    
                //4
                oBtn.addEventListener('click', function () {
                    console.log('btn处于事件捕获阶段');
                }, true);
    
                //4
    
                oBtn.addEventListener('click', function () {
                    console.log('btn处于事件冒泡阶段');
                }, false);
                //5  false 表示冒泡
                 document.body.addEventListener('click', function () {
                    console.log('body处于事件冒泡阶段');
                }, false);
                // //6
                document.documentElement.addEventListener('click', function () {
                    console.log('html处于事件冒泡阶段');
                }, false);
    
                //7
                document.addEventListener('click', function () {
                    console.log('document处于事件冒泡阶段');
                }, false);
    
    
    
    
    
            };
    
        </script>
    </head>
    <body>
    <a href="javascript:void(0);" id="btn">按钮</a>
    </body>
    </html>
    事件流

    (3)数据驱动视图

    (4)事件对象

    每个事件都会默认有个event对象

    e.target 事件目标对象
    e.keycode 键码
    e.stopPropogation();//阻止默认事件

    jquery的事件

     

    • click 单击事件(常用)

    • dblclick 双击事件

    • mouseover 鼠标移入事件(鼠标穿过被选元素或被选元素的子元素会触发)

    • mouseout

    • mouseenter(常用)进入事件(鼠标只穿过被选元素会触发事件)

    • mouseleave

    • mousedown 鼠标按下

    • mouseup 鼠标弹起

     

  • 相关阅读:
    Git for Windows安装和基本设置
    Intellij IDEA 快捷键整理
    mongoDb 命令
    CSS隐藏元素 display、visibility、opacity的区别
    推荐一款可以丰富博文GIF免费录制工具——GifCam
    html5新媒体播放器标签video、audio 与embed、object
    HTML5 video视频字幕的使用和制作
    网页中嵌入百度影音播放器的代码
    JS中的排序算法-冒泡排序解析
    深入了解opacity和rgba
  • 原文地址:https://www.cnblogs.com/wcx666/p/9960652.html
Copyright © 2011-2022 走看看