首页 前端知识 前端基础之jQuery

前端基础之jQuery

2024-05-12 17:05:04 前端知识 前端哥 367 161 我要收藏

 1 jQuery主架

        

        jQuery是一个封装JS的框架。

        使用jQuery可以更方便的编写JS脚本实现的功能。

2 jQuery框架

        jQuery 是一个 JavaScript 库。

        jQuery 极大地简化了 JavaScript 编程。

     

3 jQuery可以做什么?

        HTML 元素选取 

        HTML 元素操作 

        CSS 操作 

        HTML 事件函数 

        JavaScript 特效和动画 

        HTML DOM 遍历和修改 

        AJAX(重要)

4 如何在HTML页面中使用jQuery框架

        jQuery是一个封装了JS脚本的框架。

        也就是说是已经写好的JS代码。

        

        .js就是JavaScript的外部脚本文件。

        .min.js 这是压缩的版本。

        需要在HTML页面中导入相应的js文件。

        <script src="js/jquery-3.5.1.js" >中间是空的!!!</script>

5 jQuery的核心方法

        在jQuery中封装了一系列的方法。

        核心方法: jquery();

        简化格式: $(); 合作$代替jQuery这个方法名。

        $(参数):参数可以选择器,还可以直接就是一个函数。

6 jQuery中事件方法

        在jQuery中将HTML中事件都封装成了一系统的事件方法。

        例:表示页面输载入事件:ready(函数)

<script type="text/javascript">

$(document).ready(function(){

  alert("msg");

});

</script>

//简化版

<script type="text/javascript">

$(function(){

alert("msg");

});

</script>

7 jQuery的选择器

        选择器的作用是用来在HTML页面上查找元素。

        jQuery的选择器与CSS内嵌样式选择器是一样的。

        

        jQuery 选择器允许您对 HTML 元素组或单个元素进行操作。

        jQuery 选择器基于元素的 id、类、类型、属性、属性值等"查找"(或选择)HTML 元素。 它

基于已经存在的CSS选择器,除此之外,它还有一些自定义的选择器。

        jQuery 中所有选择器都以美元符号开头:$()。

        

8 jQuery的方法

8.1 值的方法

        HTML代码/文本/值

html()====>innerHTML

text()====>innerText

val()====>value

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title></title>
		<style type="text/css">
			* {
				font-family:'Courier New', Courier, monospace;
			}
			#myspan {
				font-size: 36px;
				color: darkorange;
				font-family: "楷体";
			}
		</style>
		<script src="js/jquery-3.5.1.js" type="text/javascript" charset="utf-8"></script>
		<script type="text/javascript">
			$(function() {
				console.log($("#myspan").html());
				$("#myspan").text("<i>这是使用jQuery加的HTML</i>");

				$("#myText").blur(function() {
					$("#myspan").html("<B>" + $(this).val() + "</B>");
				});
			});
		</script>
	</head>
	<body>
		<span id="myspan"><b>这是SPAN标签</b></span><br>
		<input type="text" name="userName" value="peter" id="myText" />
	</body>
</html>

8.2 CSS样式的方法

        使用css()的方法可以设置和获取对象的样式。

        css() 方法设置或返回被选元素的一个或多个样式属性。

返回CSS 属性

如需返回指定的 CSS 属性的值,请使用如下语法:

css("propertyname");

例子:将返回首个匹配元素的 background-color 值:

$("p").css("background-color");

设置单个CSS属性

如需设置指定的 CSS 属性,请使用如下语法:

css("propertyname","value");

下面的例子将为所有匹配元素设置 background-color 值:

$("p").css("background-color","yellow");

设置多个 CSS 属性

如需设置多个 CSS 属性,请使用如下语法:

css({"propertyname":"value","propertyname":"value",...});

下面的例子将为所有匹配元素设置 background-color 和 font-size:

$("p").css({"background-color":"yellow","font-size":"200%"});

8.3 属性

        attr方法可以获取属性的值,也可以设置属性的值,也可以获取一个我们自己新定义的属性

的值。

获取xo标签attribute属性的值:xo可以是ID可以是类。如下:
$(xo).attr(attribute)
设置attribute属性的值为value
$(xo).attr(attribute, value)
设置多个attribute属性的值value们
$(xo).attr({attribute1: value1, attribute2: value2})

8.4 类样式的使用

jQuery 操作 CSS

jQuery 拥有若干进行 CSS 操作的方法。

addClass() - 向被选元素添加一个或多个类

removeClass() - 从被选元素删除一个或多个类

toggleClass() - 对被选元素进行添加/删除类的切换操作

jQuery addClass() 方法

下面的例子展示如何向不同的元素添加 class 属性。在添加类时,您也可以选取多个元素:

$("button").click(function(){         $("h1,h2,p").addClass("blue");$("div").addClass("important");

});

也可以在 addClass() 方法中规定多个类:

$("button").click(function(){

        $("body div:first").addClass("important blue");

});

jQuery - 添加元素

通过 jQuery,可以很容易地添加新元素/内容。

添加新的 HTML 内容时学习用于添加新内容的四个 jQuery 方法:

append() - 在被选元素的结尾插入内容

prepend() - 在被选元素的开头插入内容

after() - 在被选元素之后插入内容

before() - 在被选元素之前插入内容

jQuery removeClass() 方法

下面的例子演示如何在不同的元素中删除指定的 class 属性:

$("button").click(function(){ $("h1,h2,p").removeClass("blue"); });

jQuery toggleClass() 方法

下面的例子将展示如何使用 jQuery toggleClass() 方法。该方法对被选元素进行添加/删除类的切换操作:

$("button").click(function(){ $("h1,h2,p").toggleClass("blue"); });

jQuery - 删除元素

通过 jQuery,可以很容易地删除已有的 HTML 元素。

如需删除元素和内容,一般可使用以下两个 jQuery 方法:

remove() - 删除被选元素(及其子元素)

empty() - 从被选元素中删除子元素

9 实现动态表格

步骤:①创建一个表格

           ②编写数据

           ③在页面加载完成之后初始化表格

           ④将表单中的数据加到表格

           ⑤为每一行增加一个删除按钮

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title></title>
		<style type="text/css">
			.c1 {
				background-color: #00FFFF;
			}

			.c2 {
				background-color: burlywood;
			}
			
			thead {
				background-color: fuchsia;
			}
		</style>
		<script src="js/jquery-3.5.1.js" type="text/javascript" charset="utf-8"></script>
		<script>
			let stuArr = [{
					'sid': 1,
					'sname': '残念',
					'ssex': '1',
					'sscore': 60
				},
				{
					'sid': 2,
					'sname': '白茶',
					'ssex': '0',
					'sscore': 90
				},
				{
					'sid': 3,
					'sname': '八碗',
					'ssex': '1',
					'sscore': 100
				}
			];
			$(function(){
				$("#btnAdd").click(function(){
					let trObj = $("<tr></tr>");
					let sidTd = $("<td></td>").html($("#sid").val());
					let snameTd = $("<td></td>").html($("#sname").val());
					let ssexTd = $("<td></td>").html($(".radioCls:checked").val());
					let sscoreTd = $("<td></td>").html($("#sscore").val());
					let delTd = $("<td></td>");
					let delBtn = $("<input>").attr("type","button").val("删除");
					delTd.append(delBtn);
					trObj.append(sidTd).append(snameTd).append(ssexTd).append(sscoreTd).append(delTd);
					$("#tabData").append(trObj);
					
					delBtn.click(function(){
						if(confirm("是否删除"+$(this).parent().parent().find("td:eq(1)").text()+"?")){
						$(this).parent().parent().remove();
						$("#tabData tr").removeClass("c1");
						$("#tabData tr").removeClass("c2");
						$("#tabData tr:even").addClass("c1");
						$("#tabData tr:odd").addClass("c2");
						}
					});
					
					$("#tabData tr:even").addClass("c1");
					$("#tabData tr:odd").addClass("c2");
				});
				
				$.each(stuArr,function(i,jsonObj){
					//在jQuery中如何创建一个tr标签对象
					let trObj = $("<tr>");
					let sidTd = $("<td>").html(jsonObj.sid);
					let snameTd = $("<td>").html(jsonObj.sname);
					let ssexTd = $("<td>").html(jsonObj.ssex);
					let sscoreTd = $("<td>").html(jsonObj.sscore);
					let delTd = $("<td></td>");
					let delBtn = $("<input/>").attr("type","button").val("删除");
					delTd.append(delBtn);
					trObj.append(sidTd).append(snameTd).append(ssexTd).append(sscoreTd).append(delTd);
					$("#tabData").append(trObj);
					
					delBtn.click(function(){
						if(confirm("是否删除"+$(this).parent().parent().find("td:eq(1)").text()+"?")){
						$(this).parent().parent().remove();
						$("#tabData tr").removeClass("c1");
						$("#tabData tr").removeClass("c2");
						$("#tabData tr:even").addClass("c1");
						$("#tabData tr:odd").addClass("c2");
						}
					});
				});

				$("#tabData tr:even").addClass("c1");
				$("#tabData tr:odd").addClass("c2");
			})
		</script>
	</head>
	<body>
		<table width="60%" border="1px" cellpadding="3px" cellspacing="0px">
			<thead>
			<tr>
				<th>编号</th>
				<th>姓名</th>
				<th>性别</th>
				<th>积分</th>
				<th>删除</th>
			</tr>
			</thead>
			<tbody id="tabData">
			</tbody>
		</table>
		<hr>
		<form>
			编号:<input type="text" name="sid" id="sid" value="" /><br>
			姓名:<input type="text" name="sname" id="sname" value="" /><br>
			性别:<input type="radio" name="ssex" value="1" id="ssex" />男 &nbsp;&nbsp;
			<input type="radio" name="ssex" value="0" id="ssex" />女<br>
			积分:<input type="text" name="sscore" id="sscore" value="" /><br>
			<input type="button" id="btnAdd" name="btnAdd" value="保存" />
		</form>
	</body>
</html>
转载请注明出处或者链接地址:https://www.qianduange.cn//article/8357.html
标签
评论
发布的文章

Newtonsoft.Json

2024-05-23 20:05:19

大家推荐的文章
会员中心 联系我 留言建议 回顶部
复制成功!