【jQuery】常用API——jQuery样式操作

一、操作 css 方法

jQuery 可以使用 css 方法来修改简单元素样式

1. 参数只写属性名,则是返回属性值

$(this).css(''color'');

2. 参数是属性名,属性值,逗号分隔,是设置一组样式,属性必须加引号,值如果是数字可以不用跟单位和引号

$(this).css(''color'', ''red'');

3. 参数可以是对象形式,方便设置多组样式。属性名和属性值用冒号隔开, 属性可以不用加引号

$(this).css({ "color":"white","font-size":"20px"});
    <script src="../jquery.min.js"></script>
    <style>
        div {
            width: 200px;
            height: 200px;
            background-color: pink;
        }
    </style>
</head>

<body>
    <div></div>
    <script>
        // 操作样式之css方法
        $(function () {
            // 1. 参数只写属性名,则是返回属性值
            // console.log($('div').css('width'));

            // 2. 参数是属性名,属性值,逗号分隔,是设置一组样式
            // $("div").css("width", "300px");
            // $("div").css(height, "300px"); 错误:属性名一定要加引号
            // $("div").css("width", 300); 值如果是数字可以不用跟单位和引号
            
            // 3. 参数可以是对象形式,方便设置多组样式
            $("div").css({
                // 属性名和属性值用冒号隔开, 属性可以不用加引号
                width: 400,
                height: 400,
                backgroundColor: "red"
                // 如果是复合属性则必须采取驼峰命名法,如果值不是数字,则需要加引号
            })
        })
    </script>
</body>

二、设置类样式方法

作用等同于以前的 classList,可以操作类样式,修改多个样式。 注意操作类里面的参数不要加点。

1. 添加类

$('div').addClass('current');

2. 移除类

$('div').removeClass('current');

3. 切换类:如果没有类名,就添加;如果由类名,就删除

$('div').toggleClass('current');
    <style>
        div {
            width: 150px;
            height: 150px;
            background-color: pink;
            margin: 100px auto;
            /* 过渡效果 */
            transition: all 0.5s; 
        }
        .current {
            background-color: red;
            /* 旋转效果 */
            transform: rotate(360deg);
        }
    </style>
    <script src="../jquery.min.js"></script>
</head>

<body>
    <!-- 1.添加类 -->
    <!-- <div></div> -->、

    <!-- 2.删除类 -->
    <div class="current"></div>

    <script>
        $(function () {
            // 1. 添加类 addClass()
            // 单击div后由粉变红
            // $('div').click(function(){
            //     $(this).addClass('current');
            // });

            // 2. 删除类 removeClass()
            // 单击div后由红变粉
            // $('div').click(function(){
            //     $(this).removeClass('current');
            // });

            // 3. 切换类 toggleClass()
            // 如果没有类名,就添加;如果有类名,就删除
            $('div').click(function(){
                $(this).toggleClass('current');
            });
        })
    </script>
</body>

三、类操作与 className 区别

原生 JS 中 className 会覆盖元素原先里面的类名。

jQuery 里面类操作只是对指定类进行操作,不影响原先的类名。

    <style>
        .one {
            width: 200px;
            height: 200px;
            background-color: pink;
            transition: all .3s;
        }

        .two {
            transform: rotate(720deg);
        }
    </style>
    <script src="../jquery.min.js"></script>
</head>

<body>
    <div class="one"></div>
    <script>
        // 原生 JS 中 className 会覆盖元素原先里面的类名。
        // var one = document.querySelector(".one"); // 获取
        // one.className = "two"; // 覆盖

        // jQuery 里面类操作只是对指定类进行操作,不影响原先的类名。
        $(".one").addClass("two");  // 这个addClass相当于追加类名 不影响以前的类名
        // $(".one").removeClass("two");
    </script>
</body>

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值