jQuery基本使用的方法

前言: 2006年出品的 一个 JS脚本, 其中封装了大量的方法, 可以更加快捷的操作DOM;

官网地址: https://jquery.com/

理念: write less, do more -- 写得少, 做的多

CSS

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>css</title>
</head>
<body>
    <ul>
        <li>小明</li>
        <li>小红</li>
        <li>小亮</li>
    </ul>

    <script src="/jquery-3.6.1.js"></script>
    <script>
        // $ : 由jQuery脚本注入到 全局中的变量
        console.dir($);

        console.log($('li'));
        $('li').css('color','red')

        $('li').css({
            padding: '10px',
            margin: 20,
            'font-size':50
        })
    </script>
</body>
</html>

 上方代码通过去官网下载一个 jQuery 的脚本, 然后引入一下即可使用, 这里的 $ 符号就是由jQuery脚本注入到 全局中的变量, 可以自行输出到控制台看一下, 上方代码就是用 JS 来实现 CSS 的样式变化, 通过 $('li') 来找到所有的li元素, 然后通过 全局中的变量 css 来改变该样式, 可以传多个样式, 但是需要 对象的形式, 代码一看了之

事件

jQuery中的点击事件就是 click 没有了原生DOM中的 on 关键词, 事件中的其它的 onmouseover啊等等都不用写 on 关键词的, 下方来看这样的一个代码

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>事件</title>
</head>
<body>
    <ul>
        <li>小明</li>
        <li>小红</li>
        <li>小亮</li>
    </ul>
    
    <script src="/jquery-3.6.1.js"></script>
    <script>
        // 同css的原理, 内部会自动遍历, 绑定给每个li
        $('li').click(function(){
            console.log(this);

            // this: 原生的DOM元素
            // $(this) : 把 元素 封装成 jQuery 对象. 可以使用jQuery提供的方法
            // 细节: $this -> 一种习惯, 把jq类型的变量 用 $ 开头 -- 见名知意
            var $this = $(this)
            console.log($this);
            $this.css('color', 'blue')
        })
    </script>
</body>
</html>

上方代码就是点击谁, 谁就变蓝色, 其中的this指的就是其本身

class

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>class操作</title>

    <style>
        .ok{
            margin: 3px;
            padding: 10px;
            border-radius: 5px;
            background-color: green;
            color: white;
        }
    </style>
</head>
<body>
    <ul>
        <li>小明</li>
        <li>小红</li>
        <li>小亮</li>
    </ul>

    <script src="./jquery-3.6.1.js"></script>
    <script>
        $('li').click(function(){
            const $this = $(this)
            $this.addClass('ok')
        })
    </script>
</body>
</html>

上方代码就是点击谁, 把 ok 这个样式传递给谁身上, 原生DOM中通过用 className.add('ok') 的方法这样传递, 而在jQuery中, 用this调用一下通过 addClass 一步就搞定, 是不是很简单

点击谁, 谁就变样式

兄弟元素们

siblings(): 获取当前元素 的 所有兄弟元素

扫描二维码关注公众号,回复: 16504967 查看本文章

我们来做这样的一个小例子

 

点击谁, 谁就高亮, 当然需要做一个唯一性

下面来看代码片段

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>兄弟元素们</title>
    <style>
        ul{
            display: flex;
            background-color: cadetblue;
            margin: 0;
            padding: 0;
            list-style: none;
            color: white;
        }

        li{
            padding: 10px 25px;
            cursor:pointer;
        }
        li.active{
            background-color: orange;
        }
    </style>
</head>
<body>
    <ul>
        <li class="active">红烧牛肉</li>
        <li>小鸡炖蘑菇</li>
        <li>鲜虾鱼板</li>
        <li>葱烧排骨</li>
        <li>老坛酸菜</li>
    </ul>

    <script src="/jquery-3.6.1.js"></script>
    <script>
        $('ul>li').click(function(){
            const $this = $(this)
            $this.addClass('active').siblings().removeClass('active')
        })
    </script>
</body>
</html>

 在 JS 的脚本中, 先找到需要的标签元素, 然后在通过点击事件来做相应的逻辑, 这里呢 siblings(): 就是获取当前元素 的 所有兄弟元素, 而 removeClass代表的就是 移除样式(删除样式都可以), 然后就会形成这样的一段代码

$this.addClass('active').siblings().removeClass('active')可以理解为: 当前元素.添加样式().兄弟元素们().移除样式()

当前元素: $this

添加样式: addClass('需要添加的样式')

兄弟元素们(): siblings()

移除样式: removeClass('需要移除的样式')

这样是不是就很好理解了

今天就先到这里啦!

猜你喜欢

转载自blog.csdn.net/m0_67212141/article/details/128314891
今日推荐