jquery02

1Dom操作

内容的获取

		$("#btn1").click(function(){
					// 获取input 内容
					alert($("#username").val());
				})
				
				
				
				//获取内容的两种方式
				  // 获取div 内容 不包含html 标签
//				 console.log($("#div1").text())	;	
				
				// 输出div 内容 包含 html标签
 				console.log($("#div1").html())	;	
 				
 				
 				// 获取输入框的内容---不能 获取到
 				console.log($("#username").text())
			})

设置内容

<!DOCTYPE html>
<html>
	<head>
		<meta charset="UTF-8">
		<title></title>
		
		<script src="js/jquery-3.4.1.min.js"></script>
	
	</head>
	<body>
	
		<script>
			
			 
			$(function(){
				
				// 设置文本
//				$("#div1").text("三只老虎");	
				// text("文本")  只能设置 文本 如果有html 标签 只显示 不解析
//				$("#div1").text("<h1>三只老虎</h1>");	
				
				// 设置html 格式文本  
//				$("#div1").html("<h1>三只老虎</h1>");	

//				$("#div1").text(function(i,oldText){
//					
//					// i 就是获取 $("#div1")结果的下标 
//					// oldText 通过 text 获取的内容
//					// return 返回新的内容
					return "i="+i +oldText
//                  return "三只老虎"   
//				})
				
				 $("p").text(function(i,oldText){
					
					// i 就是获取 $("p") 结果集的下标 
					// oldText 通过 text 获取的内容
					// return 返回新的内容
					return "i="+i +oldText
        
					})
				
				
				
				
				$("#btn1").click(function(){
					
					// 设置输入框 内容
					$("#username").val("root");
				})
				
				
				
				
				
		
			})
			
		
			
		</script>
		
		<div id="div1">
			
			
			<p id="p1">两只老虎</p>
			
			<p id="p2">两只老鼠</p>
			
		</div>
		
		<form>
			username:<input type="text" id="username" />
		</form>
		<button id="btn1">设置 input 内容</button>
		
		
	
		
	</body>
</html>

添加内容

	<script>
			$(function(){
				
				// 在内部追加
				$("#div1").append("<p>跑得快</p>")
				
				// 在div 内部 内容的上部追加
				$("#div1").prepend("<p>一只老虎</p>");
				
				// 在div 外部上部进行追加
				$("#div1").before("<p>开始</p>");
				
				// 在div 外部 下面追加
				$("#div1").after("<p>结束</p>");
			})
		</script>
		
		<div id="div1">
			
			<p>两只老虎</p>
			
		</div>

在这里插入图片描述

删除内容

	$("#btn1").click(function(){
					
					// 删除div1
					// div1 标签 (本身)和 内部的内容 都删除
					$("#div1").remove();
				})
				
				
				$("#btn2").click(function(){
					
					// 清空 div1 的内容
					$("#div1").empty();
				})

css 风格

<!DOCTYPE html>
<html>
	<head>
		<meta charset="UTF-8">
		<title></title>
		<script src="jquery-3.4.1.min.js"></script>
		<style>
			
			 
			/*1.先声明 对应 空间的 风格 并归类
			 * 2.更具需求 为设置不同 class 来显示 不同的样式
			 
			 * */
			.success{
			  background-color: green;
			  color: black;
			}
			
			.fail{
				background-color: red;
			    color: yellow;
			}
		</style>
	</head>
	<body>
		
		
		<script>
			$(function(){
				
				$("#btn1").click(function(){
					
					// 给btn 增加 类型
					$("#btn").addClass("success");
					
				})
				
				$("#btn2").click(function(){
					
					// 给btn 删除 类型
					$("#btn").removeClass("success");
					
				})
				
				$("#btn3").click(function(){
					
					// 切换类型
					$("#btn").toggleClass();
					
				})
				
				$("#btn4").click(function(){
					
					// 获取css 属性
					alert($("#btn").css("background-color"));
					
				})
				$("#btn5").click(function(){
					
					// 设置css 属性
					$("#btn").css("background-color","red");
					
				})
			})
		</script>
		
		
		<button id="btn1">添加class</button>  
		<button id="btn2">删除class</button> 
		
		<button id="btn3">切换class</button> 
		<button id="btn4">获取css 属性</button> 
		<button id="btn5">设置css 属性</button> 
		<hr />
		<button id="btn"> 按钮</button>
	</body>
</html>

获取/设置属性

		<script>
			$(function(){
				
				$("#btn1").click(function(){
					
					// 通过 attr 获取属性
					alert("href:"+$("#a1").attr("href"));
					
				})
				
				
				$("#btn1").click(function(){
					// 设置属性
					$("#a1").attr("href","http://news.baidu.com/");
					
				})
			})
		</script>
		
		
		<button id="btn1">btn1</button>  
		<button id="btn2">btn2</button>  
		
		<a id="a1" href="https://www.baidu.com" >百度</a>

获取控件尺寸

<!DOCTYPE html>
<html>
	<head>
		<meta charset="UTF-8">
		<title></title>
		
		<script src="js/jquery-3.4.1.min.js"></script>
		
		<style>
			/*
			 控件的width 是空间真实放置内容的大小
			 其他的 padding boder-width margin 向外围增加
			 * */
			#div1{
							
			 width: 500px;
			 height: 500px;
			 background-color: red;
			 padding: 20px;
			 border: solid 10px yellow;
			 margin: 50px;
			}
			
			#div11{ /* 内测div*/							
			 width: 500px;
			 height: 500px;
			 background-color: blue;
			}
		</style>
		
	</head>
	<body>
		
		
		<script>
			
			$(function(){
				
			  console.log("div1-with"+$("#div1").width()); 	
			  console.log("div1-with+padding"+$("#div1").innerWidth());
			  console.log("div1-with+padding+boder-width"+$("#div1").outerWidth());
			  
			  console.log("div1-with+padding+boder-width+margin"+$("#div1").outerWidth(true));
			  
			})
			
		</script>
		
		
		<div id="div1">
			
			<div id="div11">
				
			</div>
			
		</div>
		
		
		
	</body>
</html>

`

在这里插入图片描述

2.遍历

找到控件的父亲(父类),儿子(孙子节点),兄弟节点

父亲,孩子

	<script>
		
		$(function(){
			// 得到直接父类 只有一个

// $("#div3").parent().css(“border”,“solid 10px green”)

			// parents() 获取所有父辈 直到 body html

// $("#div3").parents().css(“border”,“solid 10px green”)
// $("#div3").parentsUntil("#div1").css(“border”,“solid 10px green”)
// .parentsUntil() 查找元素 到那个父辈 不包括查找到的
// $("#div3").parentsUntil(“body”).css(“border”,“solid 10px green”)

			// 找到所有的 直系 节点  children()

// $("#div1").children().css(“border”,“solid 10px green”);
// find("") 找到所有的 子孙 节点
// $("#div1").find("
").css(“border”,“solid 10px green”);

		    // find(".cla1") 找到所有的 孩子节点 并且 按照条件过滤的到最后结果
		     $("#div1").find(".cla1").css("border","solid 10px green");
		
		})
	</script>
	
	<div id="div1">
		
		<div id="div21" class="divaa" align="center">
			<div id="div3" class="cla1" >
				
			</div>
		</div>
		
		<div id="div22">
			
		</div>
		<div id="div23">
			
		</div>
		
	</div>

查找兄弟节点,过滤

	<script type="text/javascript">
		
		$(function() {
			// $("#div4").siblings() 获取所有的兄弟节点

// $("#div4").siblings().text(“siblings”);

			// next() 获取当前 节点下面的兄弟节点 只有一个 或者没有

// $("#div4").next().text(“next”);

			//	nextAll() 获取当前节点下 所有结点

// $("#div4").nextAll().text(“nextAll”);

			//nextUntil("#div6") 查找下面那个一个 结点 不包含找到的节点

// $("#div4").nextUntil("#div6").text(“nextUntil”);

            // 查找上一个兄弟节点  prev --next 相照应
            // prevUnitl() prevAll() 

// $("#div4").prev().text(“prev”);

            // 找到直系孩子 节点 中的第一个节点

// $("#div0").children().first().text(“first()”);

            // // 找到直系孩子 节点 中的最后一个节点

// $("#div0").children().last().text(“last()”);

            // 获取下标 为 2的节点  下标是从 0 开始

// $("#div0").children().eq(2).text(“last()”);
// filter(".cla1") 过滤符合条件的 子结点
// $("#div0").children().filter(".cla1").text(“filter()”);

// 找到符合条件的 进行反选择
$("#div0").children().not("#div3").text(“not()”);
})

	<div id="div0">
		
		<div id="div1"></div>
		<div id="div2">div2</div>
		<div id="div3"></div>
		<div id="div4">
			两只老虎
		</div>
		<div id="div5" class="cla1"></div>
		<div id="div6">div6</div>
		<div id="div7"  class="cla1"></div>
		
		
	</div>

# 3.$.noConflict()

解决和其他js框架冲突的问题

	<script>

// $ 指的就是Jquery $==
// 凡是出现jQuery 都可以用 $替代
$(function(){

			alert("a")
		})
		
		$(document).ready(function(){
			alert("b")
		})
		
		jQuery(function(){
			
			alert("c")
		})
		
		jQuery(document).ready(function(){
			alert("d")
		})
		
		// 如果 $和其他js 框架冲突
		// 凡是出现$的地方 都可以使用 Jq
	    var Jq = $.noConflict()
		
		Jq(function(){
			
			alert("Jq")
		})
		
	</script>

# 4.ajax

### get请求

<script>

<%-- 登陆–%>
function login() {

        var username = $("#username").val();
        var password = $("#password").val();

        // jquery-ajax 提交数据
        // 三种方式 get  post  通用 ajax

        // 使用get 提交

        // url   ,function(data){}

/* $.get("/test/LoginServlet?username="+username+"&password="+password,function (data) {
// alert(data);
var responseData = JSON.parse(data)

            // 局部刷新
            $("#message").text(responseData.message);

        })*/

        // get(url, [data], [callback], [type])
        // url data  callback  data参数是对象
        /*$.get("/test/LoginServlet",{
            username:username,
            password:password
        },function (data) {
            // alert(data);
            var responseData = JSON.parse(data)

            // 局部刷新
            $("#message").text(responseData.message);

        })*/


        // dataType 设置为json  jquery-ajax 接收到数据 自动 将data 转为js 对象,
        $.get("/test/LoginServlet",{
            username:username,
            password:password
        },function (data) { /*  dataType 设置为json 自动转换为 js 对象*/

            // 局部刷新
            $("#message").text(data.message);

        },"json").error(function () {  // 服务器没有返回时调用
            alert("服务器发生错误")
        })


    }

</script>

### post请求


### 通用ajax


官方文档:https://jquery.cuishifeng.cn/jQuery.get.html


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值