JavaScript库:即library,是一个封装好的特定的集合(方法和函数)。从封装一大堆函数的角度理解库,就是在这个库中,封装了很多预先定义好的函数在里面,比如动画animate、hide、show,比如获取元素等。
简单理解:就是一个JS文件,里面对我们原生js代码进行了封装,存放到里面。这样我们可以快速高效的使用这些封装好的功能了。
比如jQuery,就是为了快速方便的操作DOM,里面基本都是函数(方法)。
常见的JavaScript库:jQuery、Prototype、YUI、Dojo、Ext JS、移动端的zepto
这些库都是对原生JavaScript的封装,内部都是用JavaScript实现的,我们主要学习的是jQuery。
jQuery是一个快速、简洁的JavaScript库,其设计的宗旨是写更少的代码做更多的事情。
j就是JavaScript;Query查询;意思就是查询js,把js中的DOM操作做了封装,我们可以快速的查询使用里面的功能
jQuery封装了JavaScript常用的功能代码,优化了DOM操作、事件处理、动画设计和Ajax交互。
学习jQuery本质:就是学习调用这些函数(方法)。
jQuery出现的目的是加快前端人员的开发速度,可以非常方便的调用和使用它,从而提高开发效率
jQuery的优点:轻量级,核心文件才几十kb,不会影响页面加载速度
跨浏览器兼容。基本兼容了现在主流的浏览器
链式编程、隐式迭代
对事件、样式、动画支持,大大简化了DOM操作
支持插件扩展开发。有着丰富的第三方的插件,例如:树形菜单、日期控件、轮播图等
免费、开源
官网https://jquery.com/
jQuery的入口函数(等着页面的DOM加载完毕再去执行js代码)
入口函数两种书写方式:①$(function(){
//此处是页面DOM加载完成的入口
})
②$(document).ready(function(){
//此处是页面DOM加载完成的入口
})
jQuery的使用 第一步:于<head></head>之间引入
e.g. <script src="jQuery.js"></script>
第二步:入口函数中写jQuery代码
jQuery名称冲突
$改成jQuery就行
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>概述加基本使用</title>
<script src="jquery-3.5.1.min.js"></script>
<style type="text/css">
div{
background-color: pink;
width: 100px;
height: 200px;
}
</style>
</head>
<body>
<script>
$(function(){
$('div').hide();
});
// jQuery的顶级对象$
// 1.$是jQuery的别称(另外的名字)
// 2.$同时也是jQuery的顶级对象
jQuery(function() {
alert(666);
});
</script>
<div></div><!-- div元素前直接写jQuery代码显示不出结果(得加入口函数),放在最下面</body>前可以</body>下面也可以。 -->
</body>
</html>
DOM对象和jQuery对象
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title></title>
<script src="jquery-3.5.1.min.js"></script>
<style type="text/css">
div{
background-color: #FFC0CB;
width: 100px;
height: 100px;
}
</style>
</head>
<body>
<div></div>
<script>
//1.DOM对象:用原生js获取过来的对象就是DOM对象
var myDiv=document.querySelector('div');//myDiv是DOM对象
console.log(myDiv);
//2.jQuery对象:用jQuery方式获取过来的对象是jQuery对象。本质:通过$把DOM元素进行了包装
$('div');//$('div')一个jQuery对象
console.dir($('div'));//jQuery对象本质是:利用$对DOM对象包装后产生的对象(伪数组形式存储)
//3.jQuery对象只能使用jQuery方法,DOM对象则使用原生的JavaScript属性和方法
myDiv.style.display='none';
//myDiv.hide();myDiv是一个DOM对象不能使用jQuery里面的hide方法
//$('div').style.display='none';这个$('div')是一个jQuery对象不能使用原生js的属性和方法
//DOM对象与jQuery对象之间是可以相互转换的。
//因为原生js比jQuery更大,原生的一些属性和方法jQuery没有给我们封装,要想使用这些属性和方法需要把jQuery对象转换为DOM对象才能使用。
//1.DOM对象转换为jQuery对象:$(DOM对象)
//$('div')
//2.jQuery对象转换为DOM对象(两种方式)
//$('div')[index] index是索引号
//$('div').get(index) index是索引号
</script>
</body>
</html>