【jQuery入门】链式编程、修改css、类操作和className的区别

文章目录


前言

jQuery是一个流行的JavaScript库,广泛用于简化DOM操作和处理事件。在jQuery中,链式编程是一种强大的技术,允许在同一行上执行多个操作。本文将介绍jQuery中的链式编程、修改CSS、类操作以及className的区别。


一、链式编程

链式编程是jQuery的一项强大功能,允许在单个语句中执行多个操作。通过在每个操作之后返回jQuery对象,可以将多个方法链接在一起。例如:

html 复制代码
// 链式编程示例
$("p").hide().addClass("myClass").slideDown();

在上面的例子中,hide()方法隐藏<p>元素,然后addClass("myClass")方法添加类,最后slideDown()方法显示元素。这使得代码更紧凑和可读。

简而言之就是把几行的东西合并成一行了

二、修改css

2.1 获取css的值

我们可以使用下面这个语句获取css的属性值

html 复制代码
$('选择器').css('你要获取的属性名')

示例代码:

html 复制代码
<script>
    $(function(){
        var li = $('li')
        var ul = $('u')
        li.css('color','pink')

        console.log($('li').css('color'));
    })
    
</script>

2.2 设置单个css属性

我们可以使用下面这个语句来设置单个css的属性:

html 复制代码
$('选择器').css("要修改的属性名","属性值")

示例代码:

html 复制代码
<script>
    $(function(){
        var li = $('li')
        var ul = $('u')
        li.css('color','pink')
    })
    
</script>

要连续设置可以这样:

html 复制代码
<script>
    $(function(){
        var li = $('li')
        var ul = $('u')
        li.css('color':'pink',"font-size":"20px")
    })
    
</script>

属性名和属性值中间用:,不同的属性之间用,

2.3 设置类样式

添加类

html 复制代码
$('选择器').addClass("你要添加的类名称")

示例代码:

html 复制代码
<!DOCTYPE html>
<html lang="ch">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <script src = "jQuery.js"></script>
    <style>
        div{
            width: 100px;
            height: 100px;
            background-color: red;
            border: 1px solid black;
        }

        .current{
            width: 100px;
            height: 20px;
            background-color: pink;
            border-radius: 5px;
            margin: 10px;
        }
    </style>
</head>
<body>
    <ul class="u">
        <li>Test</li>
        <li>Test</li>
        <li>Test</li>
        <li>Test</li>
        <li>Test</li>
    </ul>
</body>

    <script>
        $(function(){
            var li = $('li')
            var ul = $('u')
            
            li.addClass('current')
        })
        
    </script>

</html>

移除类

html 复制代码
$('选择器').removeClass('你要移除的类')

示例代码:

html 复制代码
<!DOCTYPE html>
<html lang="ch">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <script src = "jQuery.js"></script>
    <style>
        div{
            width: 100px;
            height: 100px;
            background-color: red;
            border: 1px solid black;
        }

        .current{
            width: 100px;
            height: 20px;
            background-color: pink;
            border-radius: 5px;
            margin: 10px;
        }
    </style>
</head>
<body>
    <ul class="u">
        <li>Test</li>
        <li>Test</li>
        <li>Test</li>
        <li>Test</li>
        <li>Test</li>
    </ul>
</body>

    <script>
        $(function(){
            var li = $('li')
            var ul = $('u')
            
            li.addClass('current')
            li.removeClass('current')
        })
        
    </script>

</html>

切换类

html 复制代码
$('选择器').toggleClass('你要切换成的类')

示例代码:

html 复制代码
<!DOCTYPE html>
<html lang="ch">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <script src = "jQuery.js"></script>
    <style>
        div{
            width: 100px;
            height: 100px;
            background-color: red;
            border: 1px solid black;
        }

        .current{
            width: 100px;
            height: 20px;
            background-color: pink;
            border-radius: 5px;
            margin: 10px;
        }
    </style>
</head>
<body>
    <ul class="u">
        <li>Test</li>
        <li>Test</li>
        <li>Test</li>
        <li>Test</li>
        <li>Test</li>
    </ul>
</body>

    <script>
        $(function(){
            var li = $('li')
            var ul = $('u')
            
            li.toggleClass('current')
        })
        
    </script>

</html>

三、类操作与className的区别

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

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


总结

本文介绍了jQuery中的链式编程、修改CSS、类操作以及className的区别。链式编程使得代码更紧凑和可读,css()方法用于修改元素的CSS属性,而类操作通过addClass()、removeClass()和toggleClass()方法实现。与之对应的原生JavaScript中使用className属性来进行类操作。这些功能使得使用jQuery更加便捷和灵活。通过灵活使用这些特性,您可以更高效地操作和控制页面元素。

相关推荐
Want59520 分钟前
HTML音乐圣诞树
前端·html
程序员小寒2 小时前
前端高频面试题之CSS篇(一)
前端·css·面试·css3
我命由我123453 小时前
微信开发者工具 - 模拟器分离窗口与关闭分离窗口
前端·javascript·学习·微信小程序·前端框架·html·js
我有一棵树4 小时前
file 协议与 http 协议的区别:为什么本地 HTML 无法加载相对路径 JS,以及正确的解决方式
javascript·http·html
华仔啊8 小时前
图片标签用 img 还是 picture?很多人彻底弄混了!
前端·html
合作小小程序员小小店8 小时前
网页开发,在线%新版本旅游管理%系统,基于eclipse,html,css,jquery,servlet,jsp,mysql数据库
java·数据库·eclipse·html·intellij-idea·旅游·jsp
风止何安啊8 小时前
收到字节的短信:Trae SOLO上线了?尝尝鲜,浅浅做个音乐播放器
前端·html·trae
fruge9 小时前
低版本浏览器兼容方案:IE11 适配 ES6 语法与 CSS 新特性
前端·css·es6
今日无bug12 小时前
🥁 用 HTML5 打造你的第一个“敲击乐” Web 应用
html
李@十一₂⁰19 小时前
HTML 特殊字体符号
前端·html