Python学习笔记:5.3.2 jquery框架

本文是学习陆老师的《python全栈工程师 - web开发前端基础》课程的笔记,欢迎学习交流。同时感谢陆老师的精彩传授!

一、课程目标
  • jQuery框架简介
  • jQuery选择器
  • jQuery样式控制
  • jQuery事件
二、详情解读
2.1.jQuery框架

javascript的语法规范在各个浏览器上存在兼容性问题,如果纯粹使用原生js编写前端程序,那么会有很多繁琐的兼容性代码需要编写

通过EventUtil.addHandler(),EventUtil.removeHandler(),可以用统一的写法在各个浏览器上运行

示例代码:

var EventUtil = {
   
	addHandler: function(element, type, handler) {
   
		if (element.addEventListener) {
   
			/* 标准规范 */
			element.addEventListener(type, handler, false);			
		} else if (element.attachEvent) {
   
			/* IE */
			element.attachEvent('on' + type, handler);
		} else {
   
			element['on' + type] = handler;
		}
	},
	removeHandler: function(element, type, handler) {
   
		/* 标准规范 */
		if (element.removeEventListener) {
   
			element.removeEventListener(type, handler, false);
		} else if (element.detachEvent) {
   
			/* IE */
			element.detachEvent('on' + type, handler);
		} else {
   
			element['on' + type] = null;
		}
	}
}

1.jQuery是一套应用非常广的js框架,并且基于jQuery框架,又衍生 出很多插件或者UI框架,比如后面要介绍的bootstrap
2.框架学习没有必要掌握框架的角角落落,重要的是学会查找相关手册
3.jQuery官方网站:https:/jquery.com/

1.在页面引入jquery框架
<script src=’'js/jquery-3.4.1.min.js"></script>
2.jquery框架提供了一个全局对象jQuery,该对象另外还有一个别名$
3.所有的dom操作都可以通过jQuery来完成

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title></title>
		<script src="js/jquery-3.4.1.min.js" type="text/javascript" charset="utf-8"></script>
	</head>
	<body>
		<script type="text/javascript">
			// 网页源文件加载后,还需要浏览器解析创建dom对象			
			// 加载网页过程
			console.log(document.readyState)
			
			document.onreadystatechange = function(){
    
			// 这个语句依次会输出loading, interactive, complete, 表示网页的加载过程
				console.log(document.readyState)
			}
			
			// $(document).ready 表示等待dom对象准备好后执行
			$(document).ready(function() {
    			 
			   console.log($)
			   console.log(jQuery)
			   console.log($ === jQuery)	// true	,因为它们是同一个对象	 
			});
			
			// 简写,相当于$(document).ready(function(){})
			$(function(){
    
				console.log("dom准备好了")
			})		
			
			// 等待图片等等文件加载完毕后执行
			// 下面语句会在$(document).ready(function(){})之前执行		
			$(window).on("load", function(){
    
				console.log("图片加载完毕")
			})
			
		</script>
	</body>
</html>

运行结果:

在这里插入图片描述

2.2.jQuery选择器

Jquery元素选择器使用:
$(选择器)进行元素选择,返回的是jQuery的文档对象

选择器 实例 选取
* $("*") 所有元素
#id $("#lastname") id=“lastname” 的元素
.class $(".intro") 所有 class=“intro” 的元素
element $(“p”) 所有 <p> 元素
.class.class $(".intro.demo") 所有 class=“intro” 且 class=“demo” 的元素
:first $(“p:first”) 第一个 <p> 元素
:last $(“p:last”) 最后一个 <p> 元素
:even $(“tr:even”) 所有偶数 <tr> 元素
:odd $(“tr:odd”) 所有奇数 <tr> 元素
:eq(index) $(“ul li:eq(3)”) 列表中的第四个元素(index 从 0 开始)
:gt(no) $(“ul li:gt(3)”) 列出 index 大于 3 的元素
:lt(no) $(“ul li:lt(3)”) 列出 index 小于 3 的元素
:not(selector) $(“input:not(:empty)”) 所有不为空的 input 元素
:header $(":header") 所有标题元素 <h1> - <h6>
:animated $(":animated") 所有动画元素
:contains(text) $(":contains(‘W3School’)") 包含指定字符串的所有元素
:empty $(":empty") 无子(元素)节点的所有元素
:hidden $(“p:hidden”) 所有隐藏的 <p> 元素
:visible $(“table:visible”) 所有可见的表格
s1,s2,s3 $(“th,td,.intro”) 所有带有匹配选择的元素
[attribute] $("[href]") 所有带有 href 属性的元素
[attribute=value] $("[href=’#’]") 所有 href 属性的值等于 “#” 的元素
[attribute!=value] $("[href!=’#’]") 所有 href 属性的值不等于 “#” 的元素
[attribute$=value] $("[href$=’.jpg’]") 所有 href 属性的值包含以 “.jpg” 结尾的元素
:input $(":input") 所有 <input> 元素
:text $(":text") 所有 type=“text” 的 <input> 元素
:password $(":password") 所有 type=“password” 的 <input> 元素
:radio $(":radio") 所有 type=“radio” 的 <input> 元素
:checkbox $(":checkbox") 所有 type=“checkbox” 的 <input> 元素
:submit $(":submit") 所有 type=“submit” 的 <input> 元素
:reset $(":reset") 所有 type=“reset” 的 <input> 元素
:button $(":button") 所有 type=“button” 的 <input> 元素
:image $(":image") 所有 type=“image” 的 <input> 元素
:file $(":file") 所有 type=“file” 的 <input> 元素
:enabled $(":enabled") 所有激活的 <input>元素
:disabled $(":disabled") 所有禁用的 <input>元素
:selected $(":selected") 所有被选取的 <input>元素
:checked $(":checked") 所有被选中的 <input>元素
<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title></title>
		<script src="js/jquery-3.4.1.min.js" type="text/javascript" charset="utf-8"></script>
	</head>
	<body>
		<a href="./link1.html" name="link1" class="nav" id="a1">link1</a>
		<a href="./link2.html" name="link2" class="nav" id="a2">link2</a>
		<div class="div1 red" id="div1" name="div1">
			
			<img src="" id="img1" class="thumb" name="img1">
			<form action="" method="post" name="form1">
				
				<input type="submit" value="提交"/>
			</form>
		</div>
		
		<div class="div2 red" id="div2">
			<img src="" id="img2" class="thumb">
			<form action="" method="post" name="form2">
				<input type="text" name="username" id="" value="" />
				<input type="password" name="password" id="" value="" />
				<input type="submit" value="提交"/>
			</form>
		</div>
		
		<script type="text/javascript">
			// $(选择器) 选择一个元素
			// 元素名选择器
			console.log($("div"))
			// id选择器
			console.log($("#a1"))
			console.log($('#img1'))
			// className选择器
			console.log($('.nav'))
			// 属性选择器
			console.log($("[name=link1]"))
			console.log($("[name=form1]"))
			// 伪类选择器
			console.log(
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值