jQuery的复习(一):一些基本操作

jQuery的复习(一):一些基本操作

笔记总结自:jQuery入门到精通全套完整版(jQuery2020最新版本)Web前端jQuery初学者零基础学习

举个例子

$(document).ready()和$()和jQuery()和window.jQuery()是等价的

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title>第一个例子</title>
		<!-- 指定jquery的库文件,使用相对路径 -->
		<script type="text/javascript" src="js/jquery-3.6.0.js"></script>
		<script type="text/javascript">
		/*
		1. $(document),$是函数名,document是函数的参数
		   作用是将document对象变成jquery库可以使用的对象
		2. ready是jquery中的函数,是准备的意思,当页面的dom对像加载成功后,会执行ready函数的内容
		   ready相当于js中的onload事件
		3. function()自定义的表示onload函数执行的功能
		*/
		$(document).ready(function(){
			//自定义功能代码
			alert("hello mylove")
		})
            // 快捷模式
		$(function(){
			alert("这是快捷模式!")
		})
		</script>
	</head>
	<body>
	</body>
</html>

实际应用

Dom对象和jQuery对象

  • 使用javascript对象创建的对象,就是js对象

    var obj = document.getElementById("txt1");obj是dom对象,也就是js对象
    
  • jquery对象

    使用jquery语法表示的对象就是jquery对象,jquery对象都是数组。

    var jobj = $("#txt1")
    
  • 两个对象可以相互转化

    dom对象转换为jquery:$(dom)

    jquery对象转为dom:从数组中获取第一个对象,第一个对象就是dom对象,使用[0]或者get(0)

  • 为什么要转化?

    dom对象可以使用自身的函数,但是如果想要使用jquery对象的函数,就要进行转换才可以。

Dom对象转换为jQuery对象

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title>dom对象转换为jquery</title>
		<script type="text/jscript" src="js/jquery-3.6.0.js"></script>
		<script type="text/javascript">
		function btnClick(){
			//获取dom对象
			var obj = document.getElementById("btn");
			alert("获取dom对象的属性:"+obj.value);
			
			//把dom对象进行转换
			var jobj = $(obj);
			//调用jquery中的函数,获取value值
			alert(jobj.val());
		}
		</script>
	</head>
	<body>
		<input type="button" id="btn" value="我是按钮" onclick="btnClick()"/>
	</body>
</html>

jQuery对象转换为Dom对象

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title>jquery对象转换为dom对象</title>
		<script type="text/javascript" src="js/jquery-3.6.0.js"></script>
		<script type="text/javascript">
		function btnClick(){
			//使用jquery对象获取页面的dom对象
			//var obj = $("#txt")[0];
			var obj = $("#txt").get(0);
			//alert(obj.value);
			var num = obj.value;
			alert("结果是:"+num*num);
		}
		</script>
	</head>
	<body>
		<h5 align="center">计算整数的平方</h5>
		<div align="center">
			<input type="button" value="计算平方" onclick="btnClick()" />
			<br>
			<br>
			<input type="text" id="txt" value="请输入整数" />
		</div>
	</body>
</html>

选择器

基本选择器

  • 就是一个字符串,用来定位dom对象的,定位了dom对象就可以通过jquery函数来操作dom对象。

  • 常用的选择器:

    1. id选择器: $("#dom对象的id值")

      通过dom对象的id定位到dom对象,通过id找对象,id在当前页面时唯一值!

    <!DOCTYPE html>
    <html>
    	<head>
    		<meta charset="utf-8">
    		<style type="text/css">
    		div{
    			background: gray;
    			width: 200px;
    			height: 100px;
    		}
    		</style>
    		<title>选择器的使用</title>
    		<script type="text/javascript" src="js/jquery-3.6.0.js"></script>
    		<script type="text/javascript">
    		function fun1(){
    			//id选择器、
    			var obj = $("#one");
    			//使用jquery对象改变样式
    			obj.css("background","red");
    		}
    		</script>
    	</head>
    	<body>
    		<div id="one">我是第一个div</div>
    		<br>
    		<div class="two">我是第二个</div>
            <br />
    		<div>我是没有id和calss的div</div>
    		<br/>
    		<span>我是span标签</span>
    		<input type="button" value="获取id是one的dom对象"οnclick="fun1()" />
    	</body>
    </html>
    
    1. class选择器:$(".class 样式名称")

      class表示css中的样式,使用样式的名称定位dom对象

    function fun2(){
    			//class选择器
    			var obj = $(".two");
    			obj.css("background","yellow");
    		}
    
    1. 标签选择器:$(“标签名称”)

      使用标签名称定位dom对象!

    function fun3(){
    			//标签选择器
    			var obj = $("div");//是一个数据,有三个对象
    			//jequry的操作对像都是操作数组的全部成员,所以是所有div都设置了背景色
    			obj.css("background","blue");
    		}
    
    1. 所有选择器:$("*")

      选取页面中的所有dom对象

    2. 混合选择器:$("#id",".class",“div”)

表单选择器

  • 是指文本框,单选框,复选框,下拉列表等元素的选择方式,该方法和是否存在表单form无关,都能做出相应的选择。表单选择器是为了更加容易地操作表单,表单选择器根据元素类型来定义。

  • 使用<input>标签的type属性值,定位dom对象的方式

    语法:$(":type的属性值")

    $(":text")是指所有的单行文本框
    $(":button")是指所有的按钮
    
  • 例子:

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<style type="text/css">
		div{
			background: gray;
			width: 200px;
			height: 100px;
		}
		.two{
			background: pink;
		}
		</style>
		<title>选择器的使用</title>
		<script type="text/javascript" src="js/jquery-3.6.0.js"></script>
		<script type="text/javascript">
		function fun1(){
			//表单选择器
			var obj = $(":text");
			//获取value属性的指,val()是jquery中的函数,读取value的属性值
			alert(obj.val());
		}
		function fun2(){
			//定位radio
			var obj = $(":radio");//数组,目前是两个对象
			//循环数组,数组中的成员是dom对象
			for(var i = 0;i < obj.length;i++){
				//从数组获取成员,使用下标的形式
				var dom = obj[i];
				//使用dom对象的属性,获取value值
				alert(dom.value);
			}
		}
		function fun3(){
			var obj = $(":checkbox");//数组,有三个对象
			for(var i = 0;i < obj.length;i++){
				//从数组获取成员,使用下标的形式
				var dom = obj[i];
				//使用dom对象的属性,获取value值
				alert(dom.value);
				//使用jquery对象
				alert("jquery函数调用="+$(dom).val());
			}
		}
		</script>
	</head>
	<body>
		<input type="text" value="我是type=text" /><br />
		<br />
		<input type="radio" value="man"/><br>
		<input type="radio" value="woman"/><br>
		<br>
		<input type="checkbox"  value="bike" />骑行<br>
		<input type="checkbox"  value="football" />足球<br>
		<input type="checkbox"  value="music" />音乐<br>
		<br>
		<input type="button"  value="读取text的值" onclick="fun1()"/><br>
		<input type="button"  value="读取radio的值" onclick="fun2()"/><br>
		<input type="button"  value="读取checkbox的值" onclick="fun3()"/><br>
	</body>
</html>

过滤器

在定位了dom对象后,根据一些条件筛选dom对象。

过滤器有一个字符串,用来筛选dom对象的,不能单独使用,要和选择器一起使用。

基本过滤器

  • 选择第一个first,保留数组中的第一个dom对象

    $("选择器:first")
    
  • 选择最后一个last,保留数组中最后的dom对象

    $("选择器:last")
    
  • 选择数组中指定对象

    $("选择器:eq(数组索引)")
    
  • 选择数组中大于指定索引的所有dom对象

    $("选择器:gt(数组索引)")
    
  • 举例子:

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<style type="text/css">
		div{
			background: gray;
		}
		</style>
		<title>过滤器的使用</title>
		<script type="text/javascript" src="js/jquery-3.6.0.js"></script>
		<script type="text/javascript">
		$(function(){
			//当页面dom对象加载之后,给对象绑定事件,因为此时button在内存中已经创建好了,才能引用
			$("#btn").click(function(){
				//alert("按钮单击!")
				var obj = $("div:first");
				obj.css("background","green");
			})
			$("#btn1").click(function(){
				var obj = $("div:last");
				obj.css("background","red");
			})
			$("#btn2").click(function(){
				var obj = $("div:eq(3)");
				obj.css("background","yellow");
			})
			$("#btn3").click(function(){
				var obj = $("div:gt(3)");
				obj.css("background","blue");
			})
			$("#btn4").click(function(){
				var obj = $("div:lt(4)");
				obj.css("background","blue");
			})
		})
		</script>
	</head>
	<body>
		<div id="cne">我是div-0	</div>
		<div id="two">我是div-1	</div>
		<div id="">我是div-2
			<div id="">我是div-3</div>
			<div id="">我是div-4</div>
		</div>
		<div id="">我是div-5</div>
		<br>
		<span>我是span</span>
		<p>我是功能按钮</p>
		<input type="button" id="btn" value="获得第一个div"/><br>
		<input type="button" id="btn1" value="获得最后一个div"/><br>
		<input type="button" id="btn2" value="获得下标为3的div"/><br>
		<input type="button" id="btn3" value="获得大于3的div"/><br>
		<input type="button" id="btn4" value="获得小于4的div"/><br>
	</body>
</html>

表单属性过滤器

根据表单中的dom对象的状态情况,定位dom对象

启用状态:enableed

不可用状态:disabled

选择状态:checked,例如radio、checkbox

  1. 选择可用的文本框
$(":text":enabled)
  1. 选择不可用的文本框
$(":text":disabled)
  1. 复选框中的元素
$(":checkbox:checked")
  1. 选择指定下拉列表的被选中元素
选择器>option:selected
  • 举例子
<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<style type="text/css">
		div{
			background: gray;
		}
		</style>
		<title>过滤器的使用</title>
		<script type="text/javascript" src="js/jquery-3.6.0.js"></script>
		<script type="text/javascript">
		$(function(){
			//当页面dom对象加载之后,给对象绑定事件,因为此时button在内存中已经创建好了,才能引用
			$("#btn1").click(function(){
				//获取所有可用的text
				var obj = $(":text:enabled");
				//设置jquery中所有的dom对象值
				obj.val("hello");
			})
			$("#btn2").click(function(){
				//获取所有可用的checkbox
				var obj = $(":checkbox:checked");
				//设置jquery中所有的dom对象值
				for(var i = 0;i <obj.length;i++){
					alert(obj[i].value);
					alert("jquery显示:"+$(obj[i]).val());
				}
			})
			$("#btn3").click(function(){
				//var obj = $("select>option:selected");
				var obj = $("#yuyan>option:selected");
				alert(obj.val());
			})
		})
		</script>
	</head>
	<body>
		<input type="text" id="txt1" value="text1"/><br>
		<input type="text" id="txt2" value="text2" disabled="true"/><br>
		<input type="text" id="txt3" value="text3"/><br>
		<input type="text" id="txt4" value="text4" disabled/><br>
		<br>
		<input type="checkbox" value="游泳" />游泳<br>
		<input type="checkbox" value="健身" checked="true" />健身<br>
		<input type="checkbox" value="游戏" checked />游戏<br>
		<br>
		<select id="yuyan">
			<option value="java">java语言</option>
			<option value="go" selected="true">go语言</option>
			<option value="python">python语言</option>
		</select>
		<p>功能选择</p>
		<input type="button" id="btn1" value="设置可用的text为hello"/><br>
		<button id="btn2">显示复选框的值</button><br>
		<button id="btn3">显示下拉框的值</button><br>
	</body>
</html>

事件

定义元素监听事件

$(选择器).事件名称(事件的处理函数)

$(选择器):定位dom对象,dom对象可以有多个,这些对象都绑定了事件了

事件名称:就是js中事件去掉on部分,例如js中的单击事件,onclick(),jquery对象中的事件名称就是click

事件的处理函数:就是一个function,当事件发生的时候,执行这个函数的内容。

例如给button绑定单击事件:

$("#btn").click(function(){
    alert("单击了按钮!!!")
})

on()绑定事件

$(选择器).on(event,function)

event:事件一个或者多个,多个之间空格分开

function:可选,规定事件发生的时候运行该函数

$("#btn").on("click",function(){
   处理按钮单击事件!
})
<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title>事件</title>
		<script type="text/javascript" src="js/jquery-3.6.0.js"></script>
		<script type="text/javascript">
		$(function(){
			//使用append增加dom对象
			$("#btn1").on("click",function(){
				$("#mydiv").append("<br><input type='button' id='newbtn' value='我是新的按钮' />");
				//给on按钮点击事件
				$("#newbtn").on("click",function(){
					alert("新的按钮被单击了!");
				})
			})
			
		})
		</script>
	</head>
	<body>
		<div id="mydiv">
			我是一个div,我要一个button
		</div>
		<br>
		<input type="button"  value="增加一个按钮" id="btn1"/><br>
	</body>
</html>
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值