美文网首页
jQuery对象与DOM对象的相互转化

jQuery对象与DOM对象的相互转化

作者: 残梦Tenderness | 来源:发表于2020-01-06 18:54 被阅读0次

    在使用js过程中,会发现在某些方面,原生的js代码相对于jQuery有自己特定的优势,会更加简洁,所以掌握两类对象的相互转化非常重要。

    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <title>DOM对象和jQuery对象的相互转化</title>
        <!-- 引入jQuery -->
        <script type="text/javascript" src="/lib/jquery-3.4.1.js"></script>
        <script src="https://cdn.bootcss.com/jquery/3.4.1/jquery.js"></script>
    
        <script type="text/javascript" >
            $(document).ready(
                function () {
                    // 给第一个按钮绑定事件
                    var btn01 = document.getElementById("dom2dom");
                    btn01.onclick = function () {
                        var divEleDom = document.getElementById("testDiv");
                        // 将divEleDom的style.color赋值为red
                        divEleDom.style.color = "red";
                    }
    
    
                    // 给第二个按钮绑定事件  将DOM对象转换为jQuery对象
                    // 获取DOM对象
                    var btn02Dom = document.getElementById("dom2jQuery");
                    // 转换为jQuery对象
                    var btn02JQuery = $(btn02Dom);
                    // 为jQuery对象绑定事件
                    btn02JQuery.click(function () {
                        // 使用jQuery对象.css("AttributeName", "NewAttribute");方法来操作jQuery对象的css属性
                        $("#testDiv").css("color", "red");
                    });
    
    
                    // 给第三个按钮绑定事件,使用jQuery对象操作jQuery方法
                    $("#jQuery2jQuery").click(function () {
                        $("#testDiv").css("height", "300px");
                    });
    
    
                    // 给第四个按钮绑定事件,使用jQuery对象操作DOM方法
                    // 获取jQuery对象
                    var btn4EleJQuery = $("#jQuery2dom");
                    // 转化为DOM对象
                    var btn04Dom = btn4EleJQuery[0];
                    // alert(btn04Dom);
                    // 绑定事件
                    btn04Dom.onclick = function () {
                        var divEleDom = document.getElementById("testDiv");
                        // alert(divEleDom);
                        // 将divEleDom的style.color赋值为red
                        divEleDom.style.color = "red";
                    }
                }
            );
        </script>
    </head>
    <body>
        <div id="testDiv">mTender</div>
    
        <button id="dom2dom">使用DOM对象调用DOM方法</button>
        <button id="dom2jQuery">使用DOM对象调用jQuery方法</button>
        <button id="jQuery2jQuery">使用jQuery对象调用jQuery方法</button>
        <button id="jQuery2dom">使用jQuery对象调用DOM方法</button>
    </body>
    </html>
    

    首先是DOM对象转换为jQuery对象,直接使用jQuery的核心函数转化即可:

    // 获取DOM对象
    var domEle = document.getElementById("eleId");
    // 使用核心函数将DOM对象转换为jQuery对象
    var jQueryEle = $(domEle);
    

    然后就是jQuery对象转化为DOM对象,jQuery对象创建后,是一个DOM对象数组,所以只需要完成数组取值即可:

    // 获取jQuery对象
    var jQueryEle = &("#eleId");
    // 获取DOM对象
    var domEle = jQueryEle[0];
    

    相关文章

      网友评论

          本文标题:jQuery对象与DOM对象的相互转化

          本文链接:https://www.haomeiwen.com/subject/aonkactx.html