jQuery笔记梳理

1.jQuery引入方式?

<script src="jQuery文件路径"></script>

2.jQuery与js相互转化?
js---->jQuery
$(js对象)---->可以将js对象转化为jQuery对象。
jQuery----->js
jQuery对象的本质是一个数组,该数组中的每一个对象都是js对象。

console.log($("#ipt").length)//查看jquery的长度
        //利用jquery的长度得到
        console.log($("#ipt")[0].value);

3.jQuery选择器(重要)

  1. 基本选择器
选择器名称语法解释
标签选择器(元素选择器)$(“html标签名” )获得所有匹配标签名称的元素
id选择器$("#id的属性值")获得与指定id属性值匹配的元素
类选择器$(".class的属性值")获得与指定的class属性值匹配的元素
  1. 层级选择器
    A空格B:表示获取A里面的所有B(孙子也能获取)
    A>B:表示获取A里面的子元素B(孙子不能获取)
  2. 属性选择器
    在这里插入图片描述 [属性名]包含某个属性
<input type="text" id="ipt" value="great" /><br />
    <input type="password" value="110" />
    <script>
        // 目标:设置有id属性的input标签的背景色为红色
        //属性选择器:[属性名]包含某个属性
        $("input[id]").css("background-color", "red");
        // $("#ipt").css("background-color", "red")
    </script>

[属性名=值]

 <input type="text" id="ipt" value="great" /><br />
    <input type="password" value="110" />
    <script>
        
        //目标:设置type为password的背景色为蓝色
        $("input[type='password']").css("background-color", "blue");
    </script>
  1. 基本过滤选择器
    在这里插入图片描述
<body>
    <table id="tab1" border="1" width="800" align="center">
        <tr>
            <td colspan="5"><input type="button" value="删除"></td>
        </tr>
        <tr style="background-color: #999999;">
            <th><input type="checkbox"></th>
            <th>分类ID</th>
            <th>分类名称</th>
            <th>分类描述</th>
            <th>操作</th>
        </tr>
        <tr>
            <td><input type="checkbox"></td>
            <td>1</td>
            <td>手机数码</td>
            <td>手机数码类商品</td>
            <td><a href="">修改</a>|<a href="">删除</a></td>
        </tr>
        <tr>
            <td><input type="checkbox"></td>
            <td>2</td>
            <td>电脑办公</td>
            <td>电脑办公类商品</td>
            <td><a href="">修改</a>|<a href="">删除</a></td>
        </tr>
        <tr>
            <td><input type="checkbox"></td>
            <td>3</td>
            <td>鞋靴箱包</td>
            <td>鞋靴箱包类商品</td>
            <td><a href="">修改</a>|<a href="">删除</a></td>
        </tr>
        <tr>
            <td><input type="checkbox"></td>
            <td>4</td>
            <td>家居饰品</td>
            <td>家居饰品类商品</td>
            <td><a href="">修改</a>|<a href="">删除</a></td>
        </tr>
    </table>
    <script>
        //目标1:设置第一行的背景色为红色
        $("tr:first").css("background-color", "red");
        //目标2:设置最后一行的背景色为蓝色
        $("tr:last").css("background-color", "blue");
        //目标3:设置所有奇数行为绿色
        $("tr:odd").css("background-color", "green");
        //目标4:设置所有偶数行为黄色
        $("tr:even").css("background-color", "yellow");
        //目标5:设置下标3的那一行的背景色为粉红色,关键知识点:eq(index)
        $("tr:eq(3)").css("background-color", "pink");
        //目标6:设置所有下标小于3的所有行的背景色为灰色,关键知识点:lt(index)
        $("tr:lt(3)").css("background-color", "gray");
        //目标7:设置所有下标大于3的所有行的背景色为橘色,关键知识点:gt(index)
        $("tr:gt(3)").css("background-color", "orange")
    </script>
</body>
  1. 表单属性选择器
<script type="text/javascript">
    //设置可用的文本框的背景色为红色
    function fn1() {
        //先获取到可用的文本框,然后设置它的背景色
        // :text 获取所有的文本框
        // :enabled 获取可用的
        $(":text:enabled").css("background-color", "red")
    }

    //设置不可用的文本框的背景色为红色
    function fn2() {
        //先获取不可用的文本框,然后设置它的背景色
        // :disabled 获取不可用的
        $(":text:disabled").css("background-color", "red")
    }
    //获取选中的多选框的个数
    function fn3() {
        // 获取选中的多选框,然后再通过length获取它的个数
        // :checkbox 获取多选框
        // :checked 获取选中的单选或者多选框
        console.log($(":checkbox:checked").length)
    }

    //获取选中的下拉框的个数
    function fn4() {
        //: selected 获取选中的下拉框的个数
        console.log($(":selected").length)
    }
</script>

4.jQuery操作标签的样式
例如:鼠标移入到输入框的时候输入框变红,移除变蓝

  1. 可以利用css设置。
    部分代码如下:
            $("#ipt").css("background-color", "blue");

  1. 利用addClass()设置。
    部分代码如下:
 .redStyle {
            background-color: red;
            width: 800px;
            height: 80px;
        }
  $("#ipt").addClass("redStyle");

5.jQuery操作标签的属性

API方法解释
attr(name,[value])获取/设置属性的值
prop(name,[value]获取/设置属性的值(checked,selected)
  • attr与prop的注意问题
    1.boolean类型的属性例如checked和selected建议使用prop操作,其他使用attr获取
    2.attr方法可以操作标签的一切属性,而prop方法只能操作标签内置有的属性
    6.jQuery操作文本和值
    代码及用法见下:
<!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>jquery获取文本和值</title>
</head>
<script src="../JQuery/jQuery文件夹/jquery-3.3.1.js"></script>

<body>
    <input type="text" name="username" id="ipt" value="刘德华" />
    <div id="city">
        <h1>北京</h1>
    </div>
    <script>
        // 1.val()方法如果不传入参数,表示获取value的值
        // console.log($("#ipt").val());
        //2.如果val("")里面传入参数,表示设置value的值
        // $("#ipt").val("四大天王");
        //3.获取id为city的div中的文本内容,text()方法表示不传入参数,获取标签体的文本,需要注意,空格也是文本
        // console.log($("#city").text());
        //4.获取div中的所有内容,html()方法表示不传入参数,获取标签体的所有内容
        // console.log($("#city").html());
        //5.text()方法传入参数,表示设置标签体的文本,如果加入<h1>之类的样式也会当作普通文本
        // console.log($("#city").text("河南"));
    </script>
</body>

</html>

7.jquery创建,插入和删除标签
在这里插入图片描述

<body>
    <ul id="city">
        <li>北京</li>
        <li>上海</li>
        <li>广州</li>
        <li id="sz">深圳</li>
    </ul>
    <input type="button" value="addCity" onclick="addCity()"><br />
    <input type="button" value="removeCity" onclick="removeCity()"><br />
    <input type="button" value="clearAllCity" onclick="clearAllCity()"><br />
    <script>
        // 目标1:点击添加按钮,往城市列表中添加河南
        function addCity() {
            //创建一个标签
            // $("<li id='hn'>河南</li>");
            //first,父标签将其追加到最后,append()方法,新创建出来的标签添加到最后。
            // $("#city").append($("<li id='hn'>河南</li>"));
            //second,appendTo()方法,新创建的标签被添加到列表中和append()方法是一致的。
            // $("<li id='hn'>河南</li>").appendTo($("#city"));
            //third,prepend()方法,父标签将子标签添加到最前面
            // $("#city").prepend($("<li id='hn'>河南</li>"))
            //four,prependTo()方法和appendTo()方法用法一致
            //five,before()方法,插入到当前元素之前,兄弟关系
            // $("#sz").before($("<li id='sx'>陕西</li>"));
            //six,after()方法,在某个标签之后添加标签,兄弟关系
            // $("#sz").after($("<li id='zj'>浙江</li>"));
        }
        //目标2:点击removeCity按钮,删除特定的城市
        function removeCity() {
            $("#sz").remove();
        }
        //目标三:点击clearAlllCity(),删除所有的城市
        function clearAllCity() {
            $("#city").empty();//与直接调用remove()方法不一样的是,remove()方法会删除所有内容,clear()会保留<ul>只会删除子元素
        }
    </script>
</body>

8.jQuery绑定事件介绍
主要有匿名函数绑定on() 方法绑定,代码及使用方式如下:

<body>
    <input type="button" value="点击" id="btn1" />
</body>
<script>
    // 以下是jquery的匿名函数绑定事件
    /* $("#btn1").mouseover(function () {
        alert("你XX");
    }) */
    //以下是jquery的on()方法绑定事件
    /* 语法:$("#btn1").on("事件类型", function () {

    }) */
    $("#btn1").on("mouseover", function () {
        alert("你XX");
    })
</script>

9.jQuery解绑事件的介绍
jquery的off()方法可以解绑事件,但是只能解绑jQuery绑定事件,
off()方法,如果传入参数,表示解绑某种事件;off()方法如果不传入参数,表示解绑所有事件。

//解绑某种事件
$("#btn1").off("mouseover");
//解绑所有事件
$("").off();

10.jQuery事件遍历
主要有全局each()遍历for of遍历 代码及使用如下:

<body>
    <ul>
        <li>北京</li>
        <li>上海</li>
        <li>广州</li>
        <li>深圳</li>
    </ul>
    <script>
        // jquery对象的each()方法,可以遍历出每一个jQuery对象
        //index表示遍历出来的每一个元素的下标,element就表示遍历出来的每一个元素。
        $("li").each(function (index, element) {
            console.log(index + ":" + element.innerHTML);
        })
        //jqery的全局each()方法进行遍历,jQuery的全局方法就是使用$调用的方法,不需要某个jQuery对象调用,既可以遍历jQuery对象,也可以遍历js对象
        // 语法:$.each(要遍历的对象,处理遍历结果的回调函数);
        $.each($("li"), function (index, element) {
            console.log(index + ";" + element.innerHTML);
        })
        //for of进行遍历,类似于增强for,遍历数组的时候没有元素下标
        // 语法:for(element of 要遍历的数组){},也可以遍历js对象
        for (element of $("li")) {
            console.log("--->" + element.innerHTML);
        }
    </script>
</body>

11.jQuery动画(了解)
1.基本效果
在这里插入图片描述

<!-- 分别在这里演示,jquery的基本效果 -->
<body>
    <img src="img/lyf.webp" width="410px" height="300px" /><br />
    <input type="button" onclick="showImg()" value="显示图片" />
    <input type="button" onclick="hideImg()" value="隐藏图片" />
    <input type="button" onclick="toggleImg()" value="切换图片" />
    <script>
        // 语法:$("").show(毫秒数,回调函数)/hide()/toggle(),回调函数是在图片加载完毕或则隐藏完毕或则切换完毕的时候执行
        function showImg() {
            $("img").show(2000, function () {
                alert("图片显示完毕")
            })
        }
        function hideImg() {
            $("img").hide(2000, function () {
                alert("图片隐藏完毕")
            })
        }
        function toggleImg() {
            $("img").toggle(2000, function () {
                alert("图片切换完毕")
            })
        }
    </script>
</body>

2.滑动效果
3.淡入淡出效果
jquery jar包
链接:https://pan.baidu.com/s/1IUUzf2CEaf2Tch0C7IYjNA
提取码:a58w

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值