05.WEB-HTML之JQuery基础学习总结(一)

本文介绍了jQuery的基本概念、选择器、事件绑定、对象转换等基础知识,并通过案例展示了如何利用jQuery实现页面元素的显示隐藏、定时弹出广告等功能。

目标内容

  • 列举常见的五中选择器,并简单描述其作用
  • 通过选择器,获得jQuery对象
  • 学会给标签绑定事件
  • 可以实现显示或隐藏标签

目录树图

一 JQuery介绍

  1.1 JQuery概述

  1.1.1 什么是jQuery

  jQuery是一个JavaScript框架,它兼容CSS3,还兼容各种浏览器.文档说明很全,应用详细,成熟插件多.

jQuery2.0及后续版本不再支持IE6/7/8浏览器

核心概念是write less,do more(写的很少,做的很多)

1.1.2 下载

1.1.3 引入和对象获取

 导入JQuery库

<script type="text/javascript" src="../../js/jquery-1.8.3.js" ></script>

1.2 基本语法

1.2.1jQuery(选择器)或 $(选择器)  在jQuery中"jQuery == $",区分大小写

//1获得jQuery对象
//*命名约定 :jQuery对象变量名建议以$开头
var $demoId = $("#demoId");

1.2.2 JQ和JS页面加载区别

<script>
			window.onload = function(){
				alert("张三");
			}
			
			//传统的方式页面加载会存在覆盖问题,加载比JQ慢(整个页面加载完毕<包括里面的其它内容,比如图片>)
			window.onload = function(){
				alert("老王");
			}
			
			//JQ的加载比JS加载要快!(当整个dom树结构绘制完毕就会加载)
			jQuery(document).ready(function(){
				alert("李四");
			});
			
			//JQ不存在覆盖问题,加载的时候是顺序执行
			$(document).ready(function(){
				alert("王五");
			});
			
			//简写方式
			$(function(){
				alert("汾九");
			});
			
		</script>

1.2.3 JQ的获取
	<script>
			$(function(){
				//1.JS方式获取
				/*document.getElementById("btn").onclick= function(){
					location.href="惊喜.html";
				}*/
				
				//2.JQ方式获取=====>>>$("#btn")
				$("#btn").click(function(){
					location.href="惊喜.html"
				});
			});
		</script>
	</head>
	<body>
		<input type="button" value="点我有惊喜" id="btn"/>
	</body>
1.2.4 jQuery对象和DOM转换

jQuery对象和DOM对象可以项目转换,但两个对象的函数不能彼此混搭使用,jQuery对象只能使用自己的函数

DOM对象转换成jQuery对象,语法jQuery(DOM对象)

jQuery对象转换成DOM对象,语法$username[index]

	<head>
		<meta charset="UTF-8">
		<title>Dom与JQ对象之间的转换</title>
		<script type="text/javascript" src="../../js/jquery-1.8.3.js" ></script>
		<script>
			function write1(){
				//1.JS的DOM操作
				//document.getElementById("span1").innerHTML="萌萌哒!";
				//DOM对象无法操作JQ对象里面属性和方法
				//document.getElementById("span1").html("萌萌哒!");
				
				var spanEle = document.getElementById("span1");
				
				//将DOM对象转换成JQ对象
				$(spanEle).html("思密达");
			}
		
		
			$(function(){
				$("#btn").click(function(){
					//JQ对象无法操作JS里面的属性和方法!!!
					//$("#span1").innerHTML="呵呵哒!"
					$("#span1").html("呵呵哒!");
					
					//JQ对象向DOM对象转换方式一
					$("#span1").get(0).innerHTML="美美哒!";
					
					//JQ对象向DOM对象转换方式二
					$("#span1")[0].innerHTML="棒棒哒!";
					
				});
			});
		</script>
	</head>
	<body>
		<input type="button" value="JS写入" onclick="write1()"/>
		<input type="button" value="JQ写入" id="btn"/><br />
		班长:<span id="span1">你好帅!</span>
	</body>
1.2.5 基本选择器

 jQuery后续学习中,"基本选择器"使用频率最大,比较重要

*id选择器 : 格式:$("#id值")       var $d1 = $("#r01");

*标签选择器 : 格式: $("标签名")     var $d2 = $("input");

*类选择器 : 格式: $(".class 类名")    var $d3 = $(".myClass");

1.2.6 基本

*通过改变元素 高度和宽度,显示或隐藏

  • show(speed,fn)   显示

参数1: 显示速度,单位:ms ,固定字符串:slow ,normal, or fast

参数2: 显示成功之后的回调函数

  • hide() 隐藏
  • toggle() 切换
1.2.7 滑动

通过改变元素高度 显示或者隐藏

  • slideDown()  显示: 高度变大
  • slideUp()  隐藏,高度变小
  • slideToggle()  切换
1.2.8 淡入淡出

通过改变元素 透明度 显示或隐藏

  • fadeIn()  显示
  • fadeOut() 隐藏
  • fadeToggle() 切换
  • fadeTo(speed,opacity,[fn]) 指定透明度

参数2 opacity:一个0到1之间表示透明度的数字

1.3 定时弹出广告案例
<script type="text/javascript" src="../js/jquery-1.8.3.js" ></script>
		<script>
			$(function(){
				//1.书写显示广告图片的定时操作
				time = setInterval("showAd()",3000);
			});
			
			//2.书写显示广告图片的函数
			function showAd(){
				//3.获取广告图片,并让其显示
				//$("#img2").show(1000);
				//$("#img2").slideDown(5000);
				$("#img2").fadeIn(4000);
				//4.清除显示图片定时操作
				clearInterval(time);
				//5.设置隐藏图片的定时操作
				time = setInterval("hiddenAd()",3000);
			}
			
			function hiddenAd(){
				//6.获取广告图片,并让其隐藏
				//$("#img2").hide();
				//$("#img2").slideUp(5000);
				$("#img2").fadeOut(6000);
				//7.清除隐藏图片的定时操作
				clearInterval(time);
			}
		</script>
★★★选择器总结

1.4.1基本选择器
  • id选择器 : 格式:$("#id值")       var $d1 = $("#r01");

  • 标签选择器 : 格式: $("标签名")     var $d2 = $("input");

  • 类选择器 : 格式: $(".class 类名")    var $d3 = $(".myClass");

1.4.2 层级选择器

  • A B , 获得A元素内部的所有B元素(祖孙) --后代
  • A>B , 获得A元素下面的所有B子元素(父子)
  • A+B , 获得A元素同级下一个B元素(兄弟)
  • A~B , 获得A元素同级所有B元素(兄弟)
1.4.3 基本过滤选择器


  • :first 第一个
  • :last 最后 一个
  • :not(..) 删除指定内容  例如:1234:not(3)  -->124
  • :even 偶数 从0开始技术 -- 操作索引号,页面显示奇数项
  • :odd 奇数
  • :eq(index) 指定第几个 =
  • :gt(index) 大于n个>
  • :lt(index) 小于n个<
  • ----------------------
  • :header获得标题(<h1>/<h2>...)
  • :animated 获得动画的
  • :focus 获得焦点的
1.4.4 属性选择器

  • [属性名]  获得有属性名的元素
  • [属性名=值] 获得属性名 等于 值 元素
  • [属性名!=值] 获得属性名 不等于 值 元素
  • [...][...][...] 符合属性选择器,多个属性同时过滤  where.. and .. and ..
  • ---------------------------------------------------------------------
  • [属性名^=值] 获得属性名 以 值 开头 元素
  • [属性名$=值] 获得属性名 以 值 结尾 元素
  • [属性名*=值] 获得属性名 含有 值 元素
1.4.5 表单属性选择器

  • :enabled  可用
  • :disabled 不可用
  • :checked 选中(单选radio  多选checkbox)
  • :selected 选择(下拉列表<select>)

二 案例二 隔行换色

2.1 相关技术

<xxx class="">  


* addClass() 给指定标签的class属性追加样式

* removeClass() 将标签指定的class属性移除

* toggleClass() 切换class属性样式,

2.2 案例实现
<script>
			//1.页面加载
			$(function(){
				/*//2.获取tbody下面的偶数行并设置背景颜色
				$("tbody tr:even").css("background-color","yellow");
				//3.获取tbody下面的奇数行并设置背景颜色
				$("tbody tr:odd").css("background-color","green");*/
				
				//2.获取tbody下面的偶数行并设置背景颜色
				$("tbody tr:even").addClass("even");
				$("tbody tr:even").removeClass("even");
				//3.获取tbody下面的奇数行并设置背景颜色
				$("tbody tr:odd").addClass("odd");
			});
		</script>

三 案例三 全选和全不选

3.1 相关知识

 属性操作 prop()

*prop() 操作的标签的特性,JQ1.6性特性,获得一些第一次分配undefined属性值的标签时,如果抛异常,将忽略浏览器生成的任何错误.

*removeProp() 移除标签的特性

3.2 案例实现
<script>
			$(function(){
				$("#select").click(function(){
					//获取下面所有的 复选框并将其选中状态设置跟编码的前端 复选框保持一致。
					//attr方法与JQ的版本有关,在1.8.3及以下有效。
					//$("tbody input").attr("checked",this.checked);
					$("tbody input").prop("checked",this.checked);
				});
			});
		</script>

本系统采用Python编程语言中的Flask框架作为基础架构,实现了个面向二手商品交易的网络平台。该平台具备完整的前端展示与后端管理功能,适合用作学术研究、课程作业或个人技术能力训练的实际案例。Flask作为种简洁高效的Web开发框架,能够以模块化方式支持网站功能的快速搭建。在本系统中,Flask承担了核心服务端的角色,主要完成请求响应处理、数据运算及业务流程控制等任务。 开发工具选用PyCharm集成环境。这款由JetBrains推出的Python专用编辑器集成了智能代码提示、错误检测、程序调试与自动化测试等多种辅助功能,显著提升了软件编写与维护的效率。通过该环境,开发者可便捷地进行项目组织与问题排查。 数据存储部分采用MySQL关系型数据库管理系统,用于保存会员资料、产品信息及订单历史等内容。MySQL具备良好的稳定性处理性能,常被各类网络服务所采用。在Flask体系内,般会配合SQLAlchemy这对象关系映射工具使用,使得开发者能够通过Python类对象直接管理数据实体,避免手动编写结构化查询语句。 缓存服务由Redis内存数据库提供支持。Redis是种支持持久化存储的开放源代码内存键值存储系统,可作为高速缓存、临时数据库或消息代理使用。在本系统中,Redis可能用于暂存高频访问的商品内容、用户登录状态等动态信息,从而加快数据获取速度,降低主数据库的查询负载。 项目归档文件“Python_Flask_ershou-master”预计包含以下关键组成部分: 1. 应用主程序(app.py):包含Flask应用初始化代码及请求路径映射规则。 2. 数据模型定义(models.py):通过SQLAlchemy声明与数据库表对应的类结构。 3. 视图控制器(views.py):包含处理各类网络请求并生成回复的业务函数,涵盖账户管理、商品展示、订单处理等操作。 4. 页面模板目录(templates):存储用于动态生成网页的HTML模板文件。 5. 静态资源目录(static):存放层叠样式表、客户端脚本及图像等固定资源。 6. 依赖清单(requirements.txt):记录项目运行所需的所有第三方Python库及其版本号,便于环境重建。 7. 参数配置(config.py):集中设置数据库连接参数、缓存服务器地址等运行配置。 此外,项目还可能包含自动化测试用例、数据库结构迁移工具以及运行部署相关文档。通过构建此系统,开发者能够系统掌握Flask框架的实际运用,理解用户身份验证、访问控制、数据持久化、界面动态生成等网络应用关键技术,同时熟悉MySQL数据库运维与Redis缓存机制的应用方法。对于入门阶段的学习者而言,该系统可作为综合性的实践训练载体,有效促进Python网络编程技能的提升。 资源来源于网络分享,仅用于学习交流使用,请勿用于商业,如有侵权请联系我删除!
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值