初识Jquery

Jquery简介

JQuery是一款浏览器的开源JavaScript库,他的核心理念是write less,do more。通过对JavaScript代码的封装,是的DOM,事件处理,动画效果,Ajax等功能的实现更加简洁,有效地提高程序开发效率。
Jquery最初由John Resing在2006年1月正式发布,吸引众多来自世界各地的JavaSoript高手的关注,与jQuery相继诞生的JavaScript库还有很多,常见的有Prototype,ExUS、Mootools和 YU等。在众多的JavaScript库中,jQuery为何能够受到众多Web开发人员的青睐呢?这主要归功于jQuery 具有如下优势。

  • 轻量级的文件包:jQuery是一个轻量级的脚本,其代码非常小巧,生产版本的文件包大小仅有94.8KB.
  • 简洁的语法:语法简洁易懂,学习速度快。
  • 全面的文档:jQuery 的文档资料很全面,方便开发者使用。
  • 强大的选择器:支持CSS1-CSS3定义的属性和选择器,与原生JavaScript相比,获取元素的方式更加灵活。
  • 出色的跨浏览器兼容性:jQuery 解决了JavaScript中跨浏览器兼容性的问题,支持的浏览器包括IE6~IE11和Firefox、 Chrome等。
  • 脚本与标签分离:jQuery 中实现JavaScript代码和HTML代码的分离,便于代码的管理和后期的维护。
  • 丰富的插件:jQuery具有很多成熟的插件,如表单验证插件、UI插件等,开发者可以通过插件扩展更多功能。

jQuery 的版本

目前,jQuery 已发布了3个系列的版本,分别为jQuery 1.x、jQuery 2.x和jQuery 3.x,
各系列版本的特点如下所示。

  • jQuery l.x:兼容IE6/7/8,使用最为广泛,目前官方对其只做Bug维护,不再新增其他功能。对于非特殊要求的项目来说,使用jQuery 1.x系列版本即可。jQuery 1.x 的最新版本为1.12.4(2016年5月20日发布)。
  • jQuery 2.x:不兼容IE6/7/8,由于不支持低端IE浏览器,目前用户量不多。同样的,官方也对其只做Bug维护,不再新增其他功能。如果不考虑兼容低版本的浏览器,可以使用jQuery 2.x系列版本。jQuery 2.x的最新版本为2.2.4(2016年5月20日发布)。
  • jQuery 3.x:不兼容IE6/7/8,只支持最新的浏览器。由于很多比较成熟的jQuery 插件还不支持jQuery3.x版本,所以jQuery 3.x系列的版本不常用。目前jQuery 3.x 版本是官方主要更新维护的版本。

在了解jQuery各系列版本之间的差异后,考虑更强的实用性,本书选择以应用较为广泛的jQuery 系列的最新版本为例进行讲解。

如何使用jquery

了解jquery基本概念后,接下来为读者介绍jquery的具体使用方法,即如何下载和引入jquery文件,然后调用jquery文件中提供方法,完成实际业务需要的功能。

jquery的下载和引入

访问jquery官方网站(http://jquery.com)请添加图片描述

在页面右上方可以看见Dwonload jquery按钮,该按钮上的3.7.1是当前最新版本,单击该按钮后,进入下载页面。

为了获取其他版本的jquery,在下载页面的下半部分找到https://releases.jquery.com链接,获取jquery所有版本的下载链接地址。请添加图片描述
进入jquery所有版本的下载页面,即可看到jquery版本的jquery文件下载链接。请添加图片描述
从图中可以看出,jquery文件的类型主要包括未压缩的开发版和压缩后的生产版。
他们的区别在于,压缩版是将jquery文件中的空白字符,注释,空行等与逻辑无关的内容删除,并进行一些优化,使得文件体积减小,加载速度比未压缩板块。

引入jquery
在项目中引入jquery时,只需求把下载好的jquery文件保存到项目目录中,在项目的HTML文件中使用

<!--引入本地下载的jquery-->
<script src="jquery-1.12.4.js"></script>

许多网站提供了静态资源公共库,通过CDN可以提高jquery的下载速度。
代码示例:

<!--引入CDN加速的jquery-->
<script src="https://code.jquery.com/jquery-1.12.4.js"></script>

第一个jquery程序

引入jquery文件后,就可以使用jquery提供的功能。下面开始编写第一个jquery程序,如demo-1.html所示。

<!DOCTYPE html>
<html>
  <head>
     <meta charset="UTF-8">
     <title>第一个jquery程序</title>
     <script src="jquery-1.12.4.js"></script>
   </head>
   <body>
         <button>say hello</button>
         <script>
         $('button').click(function(){
           alert('Hello jquery');
           });
       </script>
     </body>
 </html>

jquery的语法特点

jquery的常用操作包括选择器的使用,元素对象的操作,事件的绑定,链式编程等。接下来介绍jquery的一些常用操作。

  1. 选择器的使用

jquery选择器用于获取网页元素对象,然后对其进行操作。示例代码

<div id="myId"></div>
<script>
    $('#myid');    获取id值为myId的元素对象
 </script>
  1. 元素对象的操作

jquery中获取的元素对象可以进行一系列的操作。列如,元素的取值,赋值,属性设置等。

<div id="myId">content</div>
<script>
   //获取元素的内容
   var html=$('#myId').html();
   alert(html);
   //设置元素的内容
   $('#myId').html('Hello');   //执行后,网页元素的内容变为Hello
</script>

3.事件的绑定

jquery中事件一般直接绑定在元素上。列如,为指定元素对象绑定单击事件。

<button>say hello</button>
<script>
//为button元素绑定单击(click)事件,参数是事件的处理程序
$('button').click(function(){
   alert('Hello');
   });
</script>
  1. 链式编程

jquery中支持多个方法链式调用的形式,让开发者在完成相同功能的情况下,编写最少的代码。

<ul>
  <li>0</li><li>1</li>
  <li>2</li><li>3</li>
 </ul>
 <script>
    //将u1中索引为2的li元素的内容设置为Hello
    $('ul').find('li').eq(2).html('Hello');
</script>

DOM对象与jquery对象

什么是DOM对象

JavaScript中,经常需要操作DOM。所谓DOM指的是文档对象模拟。他提供了对文档结构化的描述,并将HTML页面与脚本,程序语言联系起来。

<html>
  <head>
    <meta charset="UTF-8">
    <title>测试</title>
   </head>
   <body>
     <h1>标题<h1>
     <ul>
       <li>
          <a herf='#'>链接</a>
       <li>
     </ul>
   </body>
 </html>

上述代码中,层层嵌套HTML标签是一个类似树形的DOM文档。其中,最外面的一层< html>标签,< html>标签嵌套着< head>标签和< body>标签。请添加图片描述
所有的元素内容都是一个节点。其中,< html >是所有内容的根节点,< body >是< hl >和< ul>的父节点。 < a> 和< meta>标签下面的分支href 与charset是标签的属性,在DOM中称为属性节点;标签下面的文本是属于该标签内部的文字,在DOM 中称为文本节点。

在了解什么是DOM后,就不再难理解什么是DOM对象。DOM对象就是JavaScript
操作DOM所使用的对象。例如,获取以上HTML代码中li标签的DOM对象,并调用
inmner Text属性获取第一个li标签的文本,如下所示。

//获取li标签对象集合:HTMLCollection(2) [li,li] 
var lis =document.getElementsByTagName('1i'); 
var firstLi=lis [0]; 
var text =firstLi.innerText; 
//获取第1个li标签的DOM对象
//获取第1个li标签的文本内容

什么是jquery对象

在前面演示过的jQuery代码中,“ $ ()”是一个工厂函数,通过“$(参数)”的形式可以创建jQuery 的实例对象,即jQuery 对象。创建jQuery对象后,就可以调用一些jQuery 提供的方法来完成具体操作。示例代码如下。

<div>Hello jQuery</div>
<script>
  //创建div元素对象,保存obj
  var obj=$('div');
  //判断obj是否为jQuery对象
  alter(obj instanceof jQuery);
  //调用html()方法获取元素内容
  alter(obj.html());
</script>

上述代码中,首先利用 $ () 将div标签转为jQuery 对象,然后利用该对象调用jQuery 中提供的html0方法获取元素内容。
另外,当创建的对象只需要使用一次时,可以简写为“ $ (div).html10”的形式,即通过一行代码完成创建对象与调用方法的操作。
值得一提的是,在引人jQuery后,除了可以使用“ $ “,还可以使用“jQuery”来进行操作,两者本质上是同一个对象,即“$(参数)”等价于"jQuery(参数)”。若在项目中 “ $ ”被用于其他的功能。

jQuery的静态方法

在使用jQuery时,不仅可以通过jQuery对象调用实例方法,还可以直接通过“$. 方法名()"的形式调用静态方法。jQuery 的静态方法是jQuery提供的便捷功能,用于完一些与具体DOM对象无关的操作。合理利用这些静态方法可以为代码编写提供许多便
下面通过代码演示jQuery静态方法的使用,示例代码如下。

<script> 
var str='test'; 
//调用静态方法trim()过滤字符串两端的空白字符
var result ='['+$.trim(str)+']'; 
alert(result);
 </script> 

从上述代码可以看出,使用静态方法“$.trim()”可以轻松过滤字符串两端的空白字关于jQuery 的其他静态方法将在后面的章节详细介绍。

jQuery对象与DOM对象的转换

在网页开发中,jQuery对象只能调用jQuery 中的属性或方法,DOM对象也只能调用DOM中的属性或方法。示例代码如下。

//jQuery对象不存在innerHTML属性,访问结果为undefined 
$(' div').innerHTML; 
//DOM对象不存在html ()方法,调用不存在的方法会出错
document.getElementById('myId').html (); 

为了解决上述问题,DOM对象与jQuery对象之间在使用时经常需要转换。下面对jQuery对象与DOM对象的互相转换进行详细讲解。

  1. jQuery对象转换成DOM对象

jQuery对象属于类数组对象,其内部将DOM对象作为数组元素。jQuery对象转换成DOM对象有两种方式,分别为"obj[index]“和"obj.get(index)”。其中 index表示DOM对象在jQuery对象中的索引。下面分别讲解这两种转换方式。

(1)obj[index]
通过obj[index]方式将jQuery对象转换成DOM对象,示例代码如下。

<div>1个div</div> 
<div>2个div</div> 
<script> 
//获取jQuery对象
var divs =$('div'); 
/通过索引的方式,将jQuery对象转换成DoM对象
vardivl=divs [0]: 
var div2=divs[1]: 
//输出div元素的内容
alert(div1.innerHTML);     //输出结果:第1个div 
alert(div2.innerHTML);     //输出结果:第2个div 
</script> 

从上述代码可以看出,一个jQuery对象中可以包含多个DOM元素,通过索引即可
取出某个具体的DOM对象。

(2)obj.get(index)
通过obj.get(index)方式将jQuery对象转换成DOM对象,示例代码如下。
端的空白字符。

<div>1个div元素</div> 
<script> 
var result=$('div').get (0).innerHTML; 
alert(result);                           //输出结果:第1个div元素
</script>

2.DOM对象转换为JQuery对象
将DOM对象作为$()函数的参数,即可转换成jQuery 对象,示例代码如下。
<

button id="btn">say hello</button> 
<script> 
//获取DOM对象btn 
var btn=document.getElementById('btn'); //将DOM对象转换成jQuery对象
var btnl=$(btn); 
//验证转换结果
alert (btn===btn1[O]);       //输出结果:true 
</script> 

通过上述代码可以看出,DOM对象和jQuery 对象可以在开发中灵活地互相转换。

  • 15
    点赞
  • 29
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

程序猿在线码字

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值