Java学习笔记day42

JQuery基础

简介

一个JavaScript的框架,简化了JS的语法和操作,定义了HTML属性操作、样式操作、DOM操作等相关函数,实现了对ajax异步请求封装。提供了很多预定义函数的JS文件。

作用

简化部分JavaScript开发

使用步骤

1.引入JQuery
2.编写代码

引入JQuery

方式1: 引入本地JQuery文件
1.下载JQuery文件
    地址1:http://code.jquery.com/jquery-3.6.0.js
    地址2:http://code.jquery.com/jquery-3.6.0.min.js
2.将JQuery文件存放在js文件夹下
3.在使用JQuery文件的html中使用script标签进行引入
方式2: 通过script标签直接引入JQuery的网络地址
<script type="text/javascript" src="http://code.jquery.com/jquery-3.6.0.js"></script>

核心函数

jQuery()函数,选择器函数,用于获取HTML文档中的元素,简写为$()
作用1: 寻找标签
语法: $("选择器")
示例: 
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>
<span id="span">span标签</span>
<br/>
<p class="p">p标签1</p>
<p class="p">p标签2</p>
</body>
<script type="text/javascript" src="/js/jquery-3.6.0.min.js"></script>
<script type="text/javascript">
    $("#span")//寻找当前网页中id值为span的标签
    $(".p")//寻找当前网页中class值为p的标签
</script>
</html>
作用2: 创建标签
语法: $("标签")
示例: 
<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8"/>
    <title></title>
    <script src="js/jquery-3.6.0.min.js" type="text/javascript" charset="utf-8"></script>
</head>
<body>
<div id="box">
    <p>p标签</p>
</div>
</body>
<script type="text/javascript">
    var h = $("<h1>德玛西亚</h1>");
    $("#box").append(h);
</script>
</html>
作用3: 入口函数
作用: 类似于window.onload = function(){}; 当页面加载完成后执行
语法1: $(document).ready(function(){});
语法2: $(function(){});
示例: 
<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8"/>
    <title></title>
    <script src="js/jquery-3.6.0.min.js" type="text/javascript" charset="utf-8"></script>
    <script type="text/javascript">
        $(document).ready(function () {
        });
        $(function () {
        });
    </script>
</head>
<body>
<div id="box">
    <p>p标签</p>
</div>
</body>
</html>
作用4: 将DOM对象转换为JQuery对象
语法: $(DOM对象)
示例: 
<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8"/>
    <title></title>
    <script src="js/jquery-3.6.0.min.js" type="text/javascript" charset="utf-8"></script>
    <script type="text/javascript">
        $(function () {
            var p = document.getElementById("p");
            console.log("p的dom对象:" + p);
            var p2 = $(p);
			//dom对象转换为jquery对象
            console.log("p的jquery对象:" + p2);
			//jquery对象转换为dom对象
            console.log("p2转换为dom对象:" + p2[0]);
        });
    </script>
</head>
<body>
<div id="box">
    <p id="p">p标签</p>
</div>
</body>
</html>

注意: JQuery无法使用DOM对象提供的属性与方法

选择器

基本选择器
id选择器: #id
class选择器: .class
标签选择器: 标签名
通配选择器: *
伪类选择器
鼠标悬浮
获取焦点
...
复合选择器
selector1 selector2: 后代选择器,选择所有selector1匹配的元素里面的匹配selector2的元素
selector1 > selector2: 子元素选择器,选择匹配selector1元素的子标签中匹配selector2的元素
selector1,selector2: 选择所有匹配selector1和selector2的元素(并集)
selector1 + selector2: 匹配所有紧接在selector1元素后的selector2元素
selector1 ~ selector2: 匹配所有在selector1元素后的selector2元素

示例: 
<!DOCTYPE html>
<html>
<head>
    <meta charset="UTF-8">
    <title></title>
    <style type="text/css">
        div p {
            color: red;
        }

        div > p {
            color: green;
        }

        #box01 p, #p {
            font-size: 20px;
        }

        #box02 + #p {
            color: orange;
        }

        #box02 ~ #p {
            text-decoration: underline;
        }
    </style>
</head>
<body>
<div id="box01">
    <p>p1</p>
    <p>p2</p>
    <p>p3</p>
    <p>p4</p>
</div>
<hr/>
<div id="box02">
    <p>p1</p>
    <p>p2</p>
    <p>p3</p>
    <p>p4</p>
</div>
<p id="p">div外的p标签</p>
</body>
</html>
属性选择器
语法: 
    选择器[属性名]
    选择器[属性名=属性值]
示例: 
<!DOCTYPE html>
<html>
<head>
    <meta charset="UTF-8">
    <title></title>
    <style type="text/css">
        input[type=password] {
            background: red;
        }

        input[type] {
            display: block;
            height: 100px;
        }
    </style>
</head>
<body>
<input type="text"/>
<input type="password"/>
</body>
</html>

JQuery选择器筛选

语法
选择器筛选语法说明
$("selector: first ")匹配selector选择的元素集合中的第一个
$("selector: last ")匹配selector选择的元素集合中的最后一个
$("selector: odd ")匹配selector选择的元素集合中索引为奇数的元素(1,3,5,7,…)
$("selector: even ")匹配selector选择的元素集合中索引为偶数的元素(0,2,4,6,…)
$("selector: eq(index) ")匹配selector选择的元素集合中索引为index的元素
$("selector: lt(index) ")匹配selector选择的元素集合中索引小于index的元素
$("selector: gt(index) ")匹配selector选择的元素集合中索引大于index的元素
$("selector [attrName=attrValue] ")匹配selector选择的元素集合中attrName属性值为attrValue的元素
$("selector [attrName!=attrValue] ")匹配selector选择的元素集合中attrName属性值不为attrValue的元素
示例
<!DOCTYPE html>
<html>
<head>
    <meta charset="UTF-8">
    <title></title>
    <script src="js/jquery-3.6.0.min.js" type="text/javascript"
            charset="utf-8"></script>
    <script type="text/javascript">
        $(function () {
            $("p:first").css("color", "red");
            $("p:last").css("color", "orange");
            $("p:odd").css("font-size", "30px");
            $("p:even").css("text-decoration", "underline");
            $("input[type=text]").css("background", "red");
            $("input[type!=text]").css("background", "green");
        });
    </script>
</head>
<body>
<div id="box01">
    <p>p1</p>
    <p>p2</p>
    <p>p3</p>
    <p>p4</p>
</div>
<hr/>
<div id="box02">
    <p>p1</p>
    <p>p2</p>
    <p>p3</p>
    <p>p4</p>
</div>
<p id="p">div外的p标签</p>
<input type="text"/>
<br/>
<input type="password"/>
</body>
</html>

JQuery操作内容

获取内容
    语法1: $("选择器").text()
    语法2: $("选择器").html()
修改内容
    语法1: $("选择器").text(修改后的内容)
    语法2: $("选择器").html(修改后的内容)
    注意: 会替换标签中原内容

示例: 
<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8"/>
    <title></title>
    <script src="js/jquery-3.6.0.min.js" type="text/javascript"
            charset="utf-8"></script>
    <script type="text/javascript">
        $(function () {
            //类似于DOM的innerText
            console.log($("#box").text());
            //类似于DOM的innerHTML
            console.log($("#box").html());
            //$("#box").text("jquery对象修改内容<hr />")
            //$("#box").html("jquery对象修改内容<hr />")
            //追加
            $("#box").html($("#box").html() + "JQuery追加的内容<hr />");
        });
    </script>
</head>
<body>
<div id="box">
    <p id="p">p标签</p>
</div>
</body>
</html>

JQuery操作属性

一般属性
语法: attr()
示例: 
//1.获取元素属性值
var v1 = $("#img").attr("src");
var v2 = $("#img").attr("width");
//2.设置元素属性
$("#img").attr("src","imgs/img01.png");
$("#img").attr("width","200px");

value属性
语法: val()
示例: 
//1.获取元素value属性值
var v = $("#userName").val();
//2.设置元素的value属性值
$("#userName").val("这是设置的值");

获取单选按钮选中的值
<!DOCTYPE html>
<html>
<head>
    <meta charset="UTF-8">
    <title></title>
    <script src="js/jquery-3.6.0.js" type="text/javascript"
            charset="utf-8"></script>
    <script type="text/javascript">
        $(function () {
            $("#btn").click(function () {
                var sex = $("input[name=sex]:checked").val();
                alert(sex);
            });
        });
    </script>
</head>
<body>
<p>
<p>1.选择您的性别?</p>
<input type="radio" value="" name="sex"/><br/>
<input type="radio" value="" name="sex"/><br/>
<input id="btn" type="button" value="提交"/>
</p>
</body>
</html>

获取多选按钮选中的值
<!DOCTYPE html>
<html>
<head>
    <meta charset="UTF-8">
    <title></title>
    <script src="js/jquery-3.6.0.js" type="text/javascript"
            charset="utf-8"></script>
    <script type="text/javascript">
        $(function () {
            $("#btn").click(function () {
                var vs = $("input[name=like]:checked");
                var values = new Array();
                for (var i = 0; i < vs.length; i++) {
                    values[i] = vs[i].value;
                }
                alert(values);
            });
        });
    </script>
</head>
<body>
<p>
<p>1.选择您的爱好?</p>
<input type="checkbox" value="篮球" name="like"/>
篮球
<br/>
<input type="checkbox" value="足球" name="like"/>
足球
<br/>
<input id="btn" type="button" value="提交"/>
</p>
</body>
</html>

删除属性
语法: removeAttr(属性名)
示例: 
$("#input").removeAttr("value");
$("#input").removeAttr("name")

class属性
语法: 
addClass(): 添加
removeClass(): 删除
toggleClass(): 原标签没有就是添加,原标签有就是删除
attr("class"): 获取class的属性值
示例: 
<!DOCTYPE html>
<html>
<head>
    <meta charset="UTF-8">
    <title></title>
    <style type="text/css">
        .text01 {
            color: red;
        }

        .text02 {
            text-decoration: underline;
        }

        .text03 {
            font-size: 80px;
        }
    </style>
    <script src="js/jquery-3.6.0.min.js" type="text/javascript"
            charset="utf-8"></script>
    <script type="text/javascript">
        $(function () {
            $(".text01").addClass("text02");
            $(".text01").removeClass("text02");
            $(".text01").toggleClass("text03");
            $(".text01").toggleClass("text01");
            console.log($("#h").attr("class"));
        });
    </script>
</head>
<body>
<h1 class="text01" id="h">测试</h1>
</body>
</html>

JQuery操作样式

获取css属性值
语法: css("属性名")
注意: 不限于内联样式的属性

修改css属性值
语法: css("属性名","属性值");
注意: 不限于内联样式的属性

示例: 
<!DOCTYPE html>
<html>
<head>
    <meta charset="UTF-8">
    <title></title>
    <style type="text/css">
        #box {
            width: 200px;
            height: 160px;
            background: red;
            border: 10px solid black;
            position: absolute;
        }
    </style>
    <script src="js/jquery-3.6.0.min.js" type="text/javascript"
            charset="utf-8"></script>
    <script type="text/javascript">
        $(function () {
            console.log($("#box").css("width"));
            $("#box").css("height", "300px");
            $("#box").css("left", "200px");
        });
    </script>
</head>
<body>
<div id="box"></div>
</body>
</html>
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值