jQuery概述

jQuery概述

学习jQuery之前首先要明白前端工程师的主要工作是什么,或者说前端工程师的成长之路有哪些等级:

前端工程师的工作

1.菜鸟级: 设计图的还原,就是根据PSD文件,写HTML+CSS。

2.入门级: 加页面特效。轮播图、菜单、选项卡、无缝滚动等等。
HTML5+CSS3炫酷页面,手机端页面。
Canvas游戏。
jQuery是页面特效的完美解决方案。

3.普通级: 碰到了数据,拿到了后台工程师的数据,组件页面,Ajax。

4.高端级: 自己写服务,自己写后台,Node.js。

5.大神级: 前端架构师,MVC,路由控制,后台协作。Angular、设计模式等等。

总结:前端开发工程师的成长之路,一定要制作页面特效。而jQuery就是制作页面特效的时候大家都比较青睐的一种解决方案。

特效就是【页面元素能够根据人的动作,而产生交互的变化】。

如:

	给元素加监听	 document.getElementById(“box”).onclick = function(){}
	改变元素的CSS样式   	box.style.backgroundColor = “red”
	改变元素的类    			box.className = “haha”
	改变元素的属性   		img.src = “1.jpg”
	动画    					setInterval

这些技术在原生JS中实现的时候,会出现很多问题,jQuery是一个快速、简洁的JavaScript框架,是继Prototype之后又一个优秀的JavaScript代码库(或JavaScript框架)而jQuery可以彻底解决js中的诸多问题!

jQuery有三条产品线:
jQuery1.x.x : 兼容IE6、7、8,花了很大的气力让IE6、7、8等低级浏览器都兼容。
jQuery2.x.x : 不兼容IE6、7、8,从1代中剔除了所有兼容代码。
jQuery3.x.x : 全面支持HTML5和CSS3。

首先我们使用jQuery的时候,必须要先引包(和我们之前自己封装的xxx.js一样):
<script type=“text/javascript” src=“jquery-1.12.3.min.js”></script>

当然,我们也可以把jQuery的声明语句写在head标签当中。
另外,jQuery的引入我们还可以采用CDN的方式来进行引入。
ps:以上引入jQuery的方式作用都是相同的,都是为了将库文件添加至我们的工程当中。

jQuery有非常便利的选择元素的能力,用一个$()函数就能够搜寻页面上的元素。

那么jQuery的操作过程是什么样的呢?
(1) jQuery操作页面元素一定是从一个$()开始的!
(2) $()函数里面有引号,引号里面写CSS选择器。
(3) 然后加上jQuery自己的方法(不能使用js原生的方法。)

jQuery课程主要分三步:

第一步:学习怎么选择元素? 使用$()函数选择元素

第二步:学习选择元素之后能干吗? 比如 .css() .animate() .addClass() .html()

第三步:综合特效

2.$()函数

2.1 size()方法和length属性
2.2 jQuery全面支持css2.1的选择器
2.3 jQuery全面支持css3的选择器
2.4 jQuery自己发明的伪类
2.5 $()函数和jQuery函数等价
2.6 $()函数得到的是jQuery对象
2.7 关于引号

2.1 size()方法和length属性
$()在选择元素的时候是批量的,因此jq提供了一个机制来访问获得元素的数量。这个机制就是size()方法和length属性。

var $div = $("div").size()
var $div = $("div").length	

两种方法都能够获取通过$()函数得到的页面元素的个数。

2.2 jQuery全面支持css2.1的选择器
前面提到过$()在选择元素的时候括号中先写引号,在引号中写css选择器。而这里提到的选择器可以是id选择器、类选择器、标签选择器、包含选择器等css2.1中提到的任意的选择器组合。

2.3 jQuery全面支持css3的选择器
对于css3选择器的支持,简单来说就是对像属性选择器、关系选择器等在css3中被提出的选择器的支持。可以直接在$()函数中使用他们。
例如:
$(“div[id=div1]”).css(“background-color”,“red”);
ps:css3选择器最大的问题实际上是浏览器的兼容性问题,但是使用jq则没有兼容性问题。

2.4 jQuery自己发明的【伪类】

选择器:first 选中指定元素集合中的第一个元素
选择器:last 选中指定元素集合中的最后一个元素
选择器:eq(n) 选中指定元素集合中从0开始,第n个元素
选择器:lt(n) 选中指定元素集合中从0开始,第n个元素之前的所有元素
选择器:gt(n) 选中指定元素集合中从0开始,第n个元素之后的所有元素
选择器:odd 选中指定元素集合中从0开始,所有奇数序号的元素
选择器:even 选中指定元素集合中从0开始,所有偶数序号的元素

2.5 $()函数和jQuery()函数等价

事实上在jq中做出了一个声明,这个声明就是$ == jQuery。
也就是说
$() 和 jQuery() 这两种写法是等价的。

	$("p:eq(2)").css("background-color","red");
	等价于
	jQuery("p:eq(2)").css("background-color","red");

ps:
并不是jq所独有的一个函数,在很多其他框架例如prototype框架中也对此函数做 出了声明。根据js语法,同名函数后声明的会覆盖前面的。 因此在工程中如果引入了多个框架,那么使用jQuery()这种写法是最保险的。 但是如果仅对于jq框架来说,这两种写法就是等价的。

2.6 $()函数得到的是jQuery对象

js中规定函数都会有一个执行结果,或者说是返回值。
jq是使用js封装的一个框架,因此$()函数也不例外。

jq中规定$()函数返回的是一个jq对象
例如:
	var $p = $("p");//此处$p就是一个jq对象(集合)


对于jq对象来说我们需要知道的内容有:
(1)jq对象仅能够调用jq中设定的属性和方法,对于原生js的属性和方法都无法调用
(2)jq对象可以在必要的时候转换为js原生对象。
	a) jq对象可以通过【jq对象[n]】方式转换为js原生对象
		var p = $("p")[0];
	b) jq对象可以通过【.get(n)】方式转换为js原生对象
		var p = $("p").get(0);

2.7 关于引号

前面提到过$()在选择元素的时候括号中先写引号,但是存在获取某些对象的时候不需要加引号的特例:

$(window)
$(document)
$(this)

只有这三种情况的时候不需要写引号

1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。 1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。 1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。
应用背景为变电站电力巡检,基于YOLO v4算法模型对常见电力巡检目标进行检测,并充分利用Ascend310提供的DVPP等硬件支持能力来完成流媒体的传输、处理等任务,并对系统性能做出一定的优化。.zip深度学习是机器学习的一个子领域,它基于人工神经网络的研究,特别是利用多层次的神经网络来进行学习和模式识别。深度学习模型能够学习数据的高层次特征,这些特征对于图像和语音识别、自然语言处理、医学图像分析等应用至关重要。以下是深度学习的一些关键概念和组成部分: 1. **神经网络(Neural Networks)**:深度学习的基础是人工神经网络,它是由多个层组成的网络结构,包括输入层、隐藏层和输出层。每个层由多个神经元组成,神经元之间通过权重连接。 2. **前馈神经网络(Feedforward Neural Networks)**:这是最常见的神经网络类型,信息从输入层流向隐藏层,最终到达输出层。 3. **卷积神经网络(Convolutional Neural Networks, CNNs)**:这种网络特别适合处理具有网格结构的数据,如图像。它们使用卷积层来提取图像的特征。 4. **循环神经网络(Recurrent Neural Networks, RNNs)**:这种网络能够处理序列数据,如时间序列或自然语言,因为它们具有记忆功能,能够捕捉数据中的时间依赖性。 5. **长短期记忆网络(Long Short-Term Memory, LSTM)**:LSTM 是一种特殊的 RNN,它能够学习长期依赖关系,非常适合复杂的序列预测任务。 6. **生成对抗网络(Generative Adversarial Networks, GANs)**:由两个网络组成,一个生成器和一个判别器,它们相互竞争,生成器生成数据,判别器评估数据的真实性。 7. **深度学习框架**:如 TensorFlow、Keras、PyTorch 等,这些框架提供了构建、训练和部署深度学习模型的工具和库。 8. **激活函数(Activation Functions)**:如 ReLU、Sigmoid、Tanh 等,它们在神经网络中用于添加非线性,使得网络能够学习复杂的函数。 9. **损失函数(Loss Functions)**:用于评估模型的预测与真实值之间的差异,常见的损失函数包括均方误差(MSE)、交叉熵(Cross-Entropy)等。 10. **优化算法(Optimization Algorithms)**:如梯度下降(Gradient Descent)、随机梯度下降(SGD)、Adam 等,用于更新网络权重,以最小化损失函数。 11. **正则化(Regularization)**:技术如 Dropout、L1/L2 正则化等,用于防止模型过拟合。 12. **迁移学习(Transfer Learning)**:利用在一个任务上训练好的模型来提高另一个相关任务的性能。 深度学习在许多领域都取得了显著的成就,但它也面临着一些挑战,如对大量数据的依赖、模型的解释性差、计算资源消耗大等。研究人员正在不断探索新的方法来解决这些问题。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值