• jquery属性操作


    操作元素(属性)

    属性操作

    '''
    --------------------------属性
    $("").attr();
    $("").removeAttr();
    $("").prop();
    $("").removeProp();
    --------------------------CSS类
    $("").addClass(class|fn)
    $("").removeClass([class|fn])
    --------------------------HTML代码/文本/值
    $("").html([val|fn])
    $("").text([val|fn])
    $("").val([val|fn|arr])
    ---------------------------
    $("").css("color","red")
    '''

    注意:

    <input id="chk1" type="checkbox" />是否可见
    <input id="chk2" type="checkbox" checked="checked" />是否可见
    
    
    
    <script>
    
    //对于HTML元素本身就带有的固有属性,在处理时,使用prop方法。
    //对于HTML元素我们自己自定义的DOM属性,在处理时,使用attr方法。
    //像checkbox,radio和select这样的元素,选中属性对应“checked”和“selected”,这些也属于固有属性,因此
    //需要使用prop方法去操作才能获得正确的结果。
    
    
    //    $("#chk1").attr("checked")
    //    undefined
    //    $("#chk1").prop("checked")
    //    false
    
    //  ---------手动选中的时候attr()获得到没有意义的undefined-----------
    //    $("#chk1").attr("checked")
    //    undefined
    //    $("#chk1").prop("checked")
    //    true
    
        console.log($("#chk1").prop("checked"));//false
        console.log($("#chk2").prop("checked"));//true
        console.log($("#chk1").attr("checked"));//undefined
        console.log($("#chk2").attr("checked"));//checked
    </script>
    
    attr和prop
    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <title>Title</title>
        <style>
            .hide{
                display: none;
            }
        </style>
    </head>
    <body>
    
        <div class="div1"></div>
        <script src="jquery-3.3.1.js"></script>
        <script>
            console.log($('.div1').hasClass('div1')) // true;$('P').hasClass('p1')判断P标签是否有class属性值为p1,返回布尔值
        </script>
    
    
        <!--***********************属性操作***********************-->
        <div class="div2" con="c1"></div>
        <input type="checkbox">是否可见
        <input type="checkbox" checked="checked">是否可见
        <script>
            console.log($('.div2').attr('con')); // c1
            $('.div2').attr('con','c2'); // 可以发现con属性值已经更改为c2
    
            console.log($(':checkbox:first').attr('checked')); // undefined
            console.log($(':checkbox:last').attr('checked')); // checked
    
            console.log($(':checkbox:first').prop('checked')); // false
            console.log($(':checkbox:last').prop('checked')); // true
            console.log($('.div2').prop('con')); // undefined
            $('.div2').prop('con','c3'); // 上面已经显示了找不到,所以无法更改
            // 结论:prop与attr用法相似,但是对于标签固有属性使用prop好一些,对于标签自定义属性使用attr好一些
        </script>
    
        <div class="div3 hide">hello div</div>
        <script>
            $('.div3').removeClass('hide'); // 移除属性值
            $('.div3').addClass('hide'); // 添加属性值
        </script>
    
        <div id="id1">
            aaaaaa
            <p>pppppp</p>
        </div>
        <script>
            console.log($('#id1').html()); // aaaaaa <p>pppppp</p>
            console.log($('#id1').text()); // aaaaaa pppppp
            $('#id1').html('<h1>hello</h1>'); // 把h1标签渲染了
            $('#id1').text('<h1>hello</h1>'); // 直接把h1标签当作文本内容
        </script>
    
        <input type="text" value="123">
        <div value="456"></div>
        <script>
            console.log($(':text').val()); // 123
            console.log($(':text').next().val()); // 什么都没打印
            $(':text').val('789');
            // 结论:val只能对有固有属性value的标签进行取值,如input/select/option
        </script>
    
        <div class="div4">hi</div>
        <script>
            $('.div4').css('color','red');
            // $('.div4').css({'color':'yellow','background-color':'black'}); // 这种写法也可以
        </script>
    </body>
    </html>
    while True: print('studying...')
  • 相关阅读:
    enote笔记语言(3)(ver0.4)
    enote笔记语言(3)(ver0.3)
    enote笔记语言(2)(ver0.5)
    enote笔记法的思考
    【原创精品】程序员最强大的利器——电子笔记本的思考(1)(ver0.3)
    enote笔记法(2)——why的使用
    enote笔记语言(5)——其他(ver0.2)
    enote笔记语言(2)(ver0.4)
    电子笔记本的思考(1)(ver0.2)
    APP——自动化——python——app测试概念和工具——背诵总结
  • 原文地址:https://www.cnblogs.com/xuewei95/p/15041835.html
Copyright © 2020-2023  润新知