jQuery_02($工具&属性&css)

今天就让我们一起来了解  jQuery的工具方法 以及 学习如何操作 jQuery 的属性和样式吧!


目录:

        一. $ 工具方法

             (案例1:演示上面所有的方法)

        二. jQuery属性和CSS(重要知识点)

             1. 属性

             (案例2:演示jQuery属性所有方法)

               (案例3:使用jQuery属性方式优化上节课《表格颜色隔行》)

               (案例4:实现购物车多选 / 取消多选功能)

             2. CSS

                1. css()设置标签css样式

                2. 位置

                3. 尺寸


一. $ 工具方法:

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

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

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

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

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

        6.  $.parseJSON(obj) : 解析json字符串转换为js对选对象 / 数组

 案例1:演示上面所有的方法 , 详细代码如下:

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title></title>
	</head>
	<body>
		<!-- jquery  是js的升级版 -->
		<!-- 
		 1.先把js文件拿到当前的项目中
		 2.将js文件导入到文件中
		 -->
		 <script src="js/jquery-3.5.1.js"></script>
		 <script>
		 // 选择器
		 
		 // ID选择器:$("#a1")
		 // CLASS选择器:$(".a1")
		 // 标签选择器:$("p")
		 // 第一个p标签:$("p:first")
		 // 最后一个p标签:$("p:last")
		 // 奇数:$("p:odd")
		 // 偶数:$("p:even")
		 // 当前的下标小于2的:$("p:lt(2)")
		 // 当前的下标大于2的:$("p:gt(2)")
		 
		 var arr=['a','b','c']
		 
		 var obj={}
		 
		 // 使用jquery遍历
		 $.each(arr,function(i,e){
			 // 第一个参数是下标   第二个参数是内容
			 // console.log(i,e)
		 })
		 
		 console.log("123".length,$.trim(" 123 ").length)
		 
		 // $.type  相当于js中的  typeof
		 console.log($.type(1))//number
		 console.log($.type("a"))//string
		 console.log($.type(arr))//array
		 console.log($.type(obj))//object
		 
		 console.log($.isArray(arr))//true
		 
		 function fa(){
			 var fb=fa
			 
			 console.log($.isFunction(fb))
		 }
		 </script>
		 <style>
		 .a{
			 box-shadow:0px 0px 10px red;
		 }
		 
		 </style>
		 <p title="123">我是p标签</p>
		 <script>
		 // 读取p标签中定义的title属性
		 console.log($("p").attr("title"))
		 // 设置p标签中定义的title属性
		 $("p").attr("title","456")
		 // 移除p便签中定义的title属性
		 $("p").removeAttr("title")
		 
		 // css操作   (jquery里面函数前面要去掉on   比如 js:onmouseover   jquery:mouseover)
		 // 添加标签
		 $("p").mouseover(function(){
			 // $(this)  当前触发的标签
			 $(this).addClass("a")
		 })
		 
		 // 删除标签
		 $("p").mouseover(fonction(){
			 // $(this)  当前触发的标签
			 $(this).removeClass("a")
		 })
		 
		 // $("p").html()   相当于  p.innerHTML
		 // $("p").text()   相当于  p.textContent
		 // $("input").val() 相当于 input.value
		 
		 $("p").html("我是pppp标签")
		 
		 
		 
		 </script>
	</body>
</html>


  二. jQuery属性和CSS(重要知识点)

 

   1. 属性 (*)

                1.  attr() : 获取某个标签属性的值,或设置某个标签属性的值

                2.  removeAttr() :删除某个标签属性

                3.  addClass() :给某个标签添加class属性值

                4.  removeClass() : 删除某个标签class属性值

                5.  prop() : 和 attr() 类似,区别在于prop 用于属性值为Boolean 类型的情况,比如多选

                6.  html() : 获取某一个标签体的内容(注意:该标签体中可以包含子标签)

                7.  text() :获取某一个标签体内容(注意:该标签体不能包含子标签)

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

 案例2:演示jQuery属性所有方法 , 具体代码如下所示:

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title></title>
	</head>
	<body>
		<!-- jquery  是js的升级版 -->
		<!-- 
		 1.先把js文件拿到当前的项目中
		 2.将js文件导入到文件中
		 -->
		 <script src="js/jquery-3.5.1.js"></script>
		 <script>
		 // 选择器
		 
		 // ID选择器:$("#a1")
		 // CLASS选择器:$(".a1")
		 // 标签选择器:$("p")
		 // 第一个p标签:$("p:first")
		 // 最后一个p标签:$("p:last")
		 // 奇数:$("p:odd")
		 // 偶数:$("p:even")
		 // 当前的下标小于2的:$("p:lt(2)")
		 // 当前的下标大于2的:$("p:gt(2)")
		 
		 var arr=['a','b','c']
		 
		 var obj={}
		 
		 // 使用jquery遍历
		 $.each(arr,function(i,e){
			 // 第一个参数是下标   第二个参数是内容
			 // console.log(i,e)
		 })
		 
		 console.log("123".length,$.trim(" 123 ").length)
		 
		 // $.type  相当于js中的  typeof
		 console.log($.type(1))//number
		 console.log($.type("a"))//string
		 console.log($.type(arr))//array
		 console.log($.type(obj))//object
		 
		 console.log($.isArray(arr))//true
		 
		 function fa(){
			 var fb=fa
			 
			 console.log($.isFunction(fb))
		 }
		 </script>
		 <style>
		 .a{
			 box-shadow:0px 0px 10px red;
		 }
		 
		 </style>
		 <p title="123">我是p标签</p>
		 <script>
		 // 读取p标签中定义的title属性
		 console.log($("p").attr("title"))
		 // 设置p标签中定义的title属性
		 $("p").attr("title","456")
		 // 移除p便签中定义的title属性
		 $("p").removeAttr("title")
		 
		 // css操作   (jquery里面函数前面要去掉on   比如 js:onmouseover   jquery:mouseover)
		 // 添加标签
		 $("p").mouseover(function(){
			 // $(this)  当前触发的标签
			 $(this).addClass("a")
		 })
		 
		 // 删除标签
		 $("p").mouseover(fonction(){
			 // $(this)  当前触发的标签
			 $(this).removeClass("a")
		 })
		 
		 // $("p").html()   相当于  p.innerHTML
		 // $("p").text()   相当于  p.textContent
		 // $("input").val() 相当于 input.value
		 
		 $("p").html("我是pppp标签")
		 
		 
		 
		 </script>
	</body>
</html>


案例3:使用jQuery属性方式优化上节课《表格颜色隔行》(休眠状态,暂时不细讲)


案例4:实现购物车多选 / 取消多选功能

(如果想要在类似于购物车的全选功能中,实现点击全选 其它多选框自动全部选中,或者想要点击大于0的按钮 全选按钮自动取消的效果,那么可以参考一下代码:)

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title></title>
		<!-- 导包 -->
		<script src="js/jquery-3.5.1.js"></script>
	</head>
	<body>
		<div>
		<input type="checkbox" id="all">
		<input type="checkbox">
		<input type="checkbox">
		<input type="checkbox">
		<input type="checkbox">
		<input type="checkbox">
		<input type="checkbox">
		<input type="text">
		</div>
		<div id="d1">
			<input type="text" id="n1">
		</div>
		<script>
		$("#all").click(function(){
			// 设置界面所有的复选框和all的状态一样
			// $(this).prop("checked") all的状态
			$(":checkbox").prop("checked",all.checked)
		})
		// 拿到大于0的多选框   所有的事件去掉on
		$(":checkbox:gt(0)").click(function(){
			// console.log(this)
			// this 是js对象
			// $(this).prop("checked")
			let status=this.checked
			if(!status){
				// 只要状态为false
				return $(":checkbox").eq(0).prop("checked",status)
			}
			// 选中了
			let f=true
			$.each($(":checkbox:gt(0)"),(a,b)=>{
				f=f&&b.checked
			})
			$(":checkbox").eq(0).prop("checked",f)
		})
		
		$("#d1").html()//读取
		$("#d1").html("<b>hello word</b>")//修改
		$("#d1").text("<b>hello word</b>")//修改
		
		// var 只能用在输入框里面
		$("#n1").val()//读取
		$("#n1").val("abc")//
		
		// 如果需要修改多个样式的值, 建议直接使用  addClass
		$("#d1").css({
			color:"red",
			background:"pink"
		})
		
		</script>
	</body>
</html>

运行结果如下图所示:

(1.当处于初始化情况下,点击全选按钮的效果:)

 

(2.当处于全选中的情况下,点击大于0的任意一个按钮之后的效果如下:)

 

 


  2. CSS:

 

           1.css()设置标签css样式

                1.  获取样式值 :css(“样式名”)

                2.  设置单个样式 :css(“样式名”,“样式值”)

                3.  设置多个样式值 : css({“样式名”:“样式值”,“样式名”,“样式值”})

           2. 位置               

                1.  offset():相对整个大容器的相对位置

                2.  positon():相对父容器的相对位置

                3.  scrollXX    :scrollTop():滚动条到顶部距离

           3. 尺寸

               内容尺寸:

                1.  width():容器宽

                2.  height():容器高

               内部尺寸:

                3.  innerWidth():width + padding

                4.  innerHeight():height + padding

                外部尺寸:(注意:参数为 true ,再加上 margin)

                5.  outerWidth ():width + padding + border

                6.  outerHeight():height + padding + border


感兴趣的可以私信关注我,后面的内容会更精彩哟~~

  • 4
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值