jQuery02($工具&属性&css)

目录

 jquery工具方法

 jquery属性

 jquery中的CSS


正文内容

jquery工具方法

jquery就是升级+简化的js

例如:jquery中的遍历数组比使用for循环和foreach更简洁方便

$each():遍历数组,对象,对象数组中的数据

<!DOCTYPE html>
<html>
	<head></head>
	<body>
		 <script src="./js/jquery-3.5.1.js"></script>
		 <script type="text/javascript">
			//定义数组
		 	var arr=[1,2,3,4]
			// $.each相当于foreach,jquery中方法都省去前面的关键字
			$.each(arr,(a/*下标*/,b/*元素*/)=>{
				console.log('下标'+a,'元素'+b)
			})
		    //定义对象
			var person={
				name:'张三',
				sex:'男',
				age:21
			}
			// 使用$遍历对象数据
			$.each(person,(a/*属性名*/,b/*属性值*/)=>{
				console.log(a,b)
			})
		 </script>
	</body>
</html>

运行如下:

$trim():去除字符串两边的空格

        // 去掉一个空格(从第一个空格开始数)
			console.log(' a b c '.replace(' ','').length)//6
		// 去所有空格
			console.log(' a b c '.replaceAll(' ','').length)//3

$type(obj):得到数据的类型

           // $.type相当于typeof
		    console.log(typeof arr)//arr是数组array(也是object)
			console.log(typeof person)//person是对象object
			console.log($.type(arr))//array
			console.log($.type(person))//object

$isArray(obj):判断是否是数组

$isArray(arr)

$isFunction(obj): 判断是否是函数

$isFunction(fn1)

补充:

// 函数一定有返回值,未写返回值就是undefined
		function f1(){}
		var f2=f1()//undefined,加上()就是得到函数运行后的返回值
		var f3=f1//是函数
		console.log($.isFunction(f2))
		console.log($.isFunction(f3))

Java: 

   序列化:对象-->文件
   反序列化:对象<--文件

jquery:

json是一段字符串,就是string,如:{'对象'}

$parseJOSON(obj):将json字符串转换为js对象/数组(反序列化)

        // 外'内""'
		var str='{"name":"李四","sex":"女"}'//用途:将对象变成字符串发送出去
		// 拿到发送过来的对象的属性值
		console.log(str)//string类型:黑色
		// $.parseJSON(字符串):将字符串变成js中的对象(反序列化)
		console.log($.parseJSON(str))//对象object
		var stu=$.parseJSON(str)
		// 拿到对象中的属性值
		console.log(stu.name,stu.sex)

运行如下:

JOSON.stringify(obj): 将对象转成字符串(序列化)

console.log(JSON.stringify(person))

jquery属性

 attr('标签中的属性','修改后的值'):获取某个标签的属性、设置某个标签属性的值

removeAttr('要删除的属性'):删除某个标签属性

addClass:给某个标签添加class属性值

removeClass:删除某个标签class属性值

prop()attr()类似,但是prop用于值为Boolean类型时,比如多选框的状态

prop()控制js中的属性,attr是标签属性,标签上的属性可以使用attr但是js中的属性不可以使用attr

html():获取某一个标签内容,该标签中可以包含子标签

text():获取某一个标签内容,该标签中不可以包含子标签

val():主要用于获取/设置输入框的值

 一起调用一下叭:

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title></title>
		<style type="text/css">
			.aa{
				color: red;
				background-color: blue;
			}
			#d3{
				width: 200px;
				height: 200px;
				background-color: #0000FF;
			}
		</style>
	</head>
	<body>
		<a href="https://www.baidu.com/">跳转网页</a>
		<button type="button" onclick="f1()">点我更改网址</button>
		<button type="button" onclick="f2()">点我删除网址</button>
		<button type="button" onclick="f3()">点我添加class属性</button>
		<button type="button" onclick="f4()">点我移除class属性</button>
		<div>
        <!--多选功能-->
		<!-- $(':checkbox'拿到页面所有多选框 prop()控制js中的属性,用于值为Boolean类型时-->
			<!-- checked属性不是标签中的 this.checked自己的状态:true/false-->
			<!-- js($)和jquery(this)对象不可互换,方法不互通,但是可以结合在一起使用 -->
			<!-- 也可以调用函数不过要拿到的是多选框类型的输入框:$(':checkbox') -->
		<input onclick="$(':checkbox').prop('checked',this.checked)" type="checkbox"/>
			<input type="checkbox"/>
			<input type="checkbox"/>
			<input type="checkbox"/>
		</div>
		<b id='d1'>哈哈</b>
		<input value="嘿嘿😁" id="d2"/>
		<div id="d3"></div>
		<script src="./js/jquery-3.5.1.js"></script>
		<script type="text/javascript">
		// attr('标签中的属性','修改后的值'):获取某个标签的属性、设置某个标签属性的值
		function f1(){
			// 使用jquery修改标签属性的值
$('a').attr('href','https://blog.csdn.net/yifei_345678?spm=1019.2139.3001.5343')
		}
		// removeAttr('要删除的属性'):删除某个标签属性
		function f2(){
			$('a').removeAttr('href')
		}
		// addClass:给某个标签添加class属性值
		function f3(){
			$('a').addClass('aa')
		}
		// removeClass:删除某个标签class属性值
		function f4(){
			$('a').removeClass('aa')
		}	
		$("#d1").html()//当不填就是读取
		$("#d1").html('<i>你好</i>')//填了值就是修改
		$("#d1").text('<i>你好</i>')//不识别标签
		// val():主要用于获取/设置输入框的值
		$("#d2").val()//当不填就是读取
		$("#d2").val('abc')//填了值就是修改
		</script>		
	</body>
</html>

部分运行结果如下:

 点击第三个按钮:

  

 点击第0个多选框后:

但是这样写的多选框功能还不是很完善

要想实现真正意义上的多选框,可以这样写:

// 多选框功能:
		// 1,取消多选
		// 拿到>0的所有多选框(.click $中点出的方法都去掉前面的关键字)
		// 给>0的所有多选框设置函数
		$(':checkbox:gt(0)').click(function (){
			// this就是>0的所有多选框,直接使用它自带的属性
			var status=this.checked;
			if(!status){//为false
				// $(':checkbox').eq[0]:选中第0个多选框
				// $是jquery,且值为Boolean类型,可以使用prop
				// return中断代码
				// 1,>0的所有多选框有取消全选时,给第0个多选框设置未选中状态
				return $(':checkbox').eq(0).prop('checked',status)
			}
			// 2,>0的所有多选框全选中时,给第0个多选框设置选中状态
			// $(":checkbox:gt(0)")拿到>0的所有多选框,使用$.each(要遍历的,(a,b)=>{操作})遍历这些多选框
			var f=true
			$.each($(":checkbox:gt(0)"),(a,b/*元素*/)=>{
				// console.log(b)$.each()可以拿到所遍历的元素
				f=f&&b.checked//有一个为假就返回false
			})
			// 给第0个多选框设置选中状态
			$(':checkbox').eq(0).prop('checked',f)
		})

 jquery中的CSS

上面的方法都可以通过查阅jQuery官方API文档来查询,学习,这里就不过多展示了


感 谢 阅 读 ^_^

  • 6
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
jQuery是一种快速、简洁的JavaScript库,为前端开发提供了丰富的功能和便捷的操作方式。它是基于JavaScript开发的,通过封装和简化了许多复杂的JavaScript操作,提供了一套易于使用的API,使开发者能够更快速地进行网页开发。 jQuery具有以下几个特点: 1. 强大的选择器:使用类似CSS选择器的语法,简洁地选择网页中的元素,可以根据元素的tag、class、id等属性进行选择。 2. 丰富的DOM操作:通过jQuery可以方便地操作网页中的DOM元素,如添加、删除、移动和复制元素,改变元素的属性、样式和内容等。 3. 高效的事件处理:jQuery提供了统一的事件处理方法,可以使用简洁的语法绑定和触发事件,还可以方便地实现事件的阻止冒泡、取消默认行为等。 4. 强大的AJAX支持:通过jQuery的AJAX方法,可以轻松地进行异步加载数据,发送POST或GET请求,接收和处理服务器返回的数据。 5. 动画效果:jQuery可以通过简单的语法实现各种动画效果,如淡入淡出、滑动、渐变等,使网页更加生动有趣。 6. 插件丰富:jQuery有大量的插件可供使用,可以轻松地扩展和增强网页的功能,如图片轮播、表单验证、日历选择等。 总之,jQuery是一种功能丰富、简洁易用的JavaScript库,为开发者提供了许多方便快捷的方法和工具,帮助开发者更高效地进行网页开发,提升用户体验。无论是初学者还是有经验的开发者,都可以很容易地上手并运用jQuery进行网页开发。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值