前言

最近在搭建完善自己的博客,需要用到一些页面样式之类的,就特意问了一下女朋友一个问题,关于Web前端开发,jQuery现在过时了嘛?她毅然决然告诉我,那是我们前端现在的鄙视链。是的,不可否认,现在框架盛行,jQuery早已被GitHub所遗弃。我依稀记得,两年前,我学前端知识,觉得这个框架真的很好,以后有时间,一定要好好学一下它。也就这么点时间,它早已淡出了前端开发者的视线。不过呢,我身为后端开发,也就是一个新人于前端来说,所以我还是很喜欢jQuery的思想,因为让我直接理解Vue/React的话,还是需要大量时间的,所以认为jQuery是一个不错的过渡选择,也可以学习下前端编程思想,我看中了它的人性化以及可读性很强,对于我们来说也很简单,所以本文带大家一起回忆那些jQuery的点点滴滴,也为我们前端知识打个牢固的技术基础。

 

1、了解jQuery

「背景:」

  • Query查询的意思,jQuery就是用javascript更方便的查询和控制页面组件

「宗旨:」

  • 设计宗旨:Write Less,Do More,即提倡写更少的代码,做更多的事

「简介:」

  • jQuery封装JavaScript常用的功能代码,提供一种简便的JavaScript设计模式,优化HTML文档操作、事件处理、动画设计和Ajax交互

  • 支持链式写法,对css样式支持接近完美

  • 集JavaScript、CSS、DOM、Ajax于一体的强大框架体系

2、jQuery的基本功能

「功能:」

1.访问和操作DOM元素
2.控制页面样式
3.对页面事件的处理
4.与Ajax技术的完美结合
5.大量插件在页面中的运用

3、搭建jQuery开发环境

「流程:」

  • 准备两份文件如下:

jQuery其实就是一个JavaScript文件,因此,搭建jQuery开发环境十分简单
<script type="text/javascript" src="js/jquery-1.8.2.js"></script>
jar包\jQuery

4、jQuery选择器

「分类:」

  • 基本选择器、层次选择器、过滤选择器(表单选择器)

「基本选择器:」

基本选择器是jQuery中使用最频繁的选择器,它由元素ID、Class、元素名、多个选择符组成,通过基本选择器可以实现大多数页面元素的查找

  • 案例:通过不同的选择器来控制页面元素的展示

「层次选择器:」

层次选择器通过DOM元素间的层次关系获取元素,其主要的层次关系包括后代、父子、相邻、兄弟关系,通过其中某类关系可以方便快捷地定位元素
选择器  功能描述
ancestor descendant  根据祖先元素匹配所有的后代元素
parent>child  根据父元素匹配所有的子元素
prev+next  匹配prev后的相邻元素
prev~siblings  匹配prev后面的所有兄弟元素

  • 案例:通过不同的选择器来控制页面元素的展示

「过滤选择器:」

过滤选择器根据某类过滤规则进行元素的匹配,书写时都以冒号(:)开头

  • 简单过滤器是使用最广泛的一种,ps:隔行变色

  • 可见性过滤选择器,根据元素是否可见的特征获取元素,ps:寻找页面被隐藏的元素

  • 属性过滤选择器,根据元素的某个属性获取元素,如ID号或匹配属性值的内容,并以“[”号开始,以“]”结束,ps:最后一个是复合属性选择器

  • 子元素过滤选择器,注意:nth-child索引从1开始

  • 表单选择器,专为表单量身打造,通过它可以在页面中快速定位某表单对象

  • 表单对象属性过滤选择器,通过表单中的某对象属性特征获取该类元素,如:enabled、disabled、checked、selected属性

「选择器综合案例:」

  • 整体如下:

  • 代码如下

<!DOCTYPE html>
<html>
 <head>
  <meta charset="UTF-8">
  <title>选择</title>
  <style type="text/css">
   body{font-size:13px}
          #all{border:solid 1px #666;width:320px;overflow:hidden}
          #all #head{background-color:#eee;padding:8px;height:18px;cursor:hand}
          #all #head h3{padding:0px;margin:0px;float:left}
          #all #head span{float:right;margin-top:3px}
          #all #content{padding:8px}
          #all #content ul {list-style-type:none;margin:0px;padding:0px}
          #all #content ul li{ float:left;width:95px;height:23px;line-height:23px}
          #all #btn{float:right;padding-top:5px;padding-bottom:5px}
  </style>
  <script type="text/javascript" src="../js/jquery-1.8.2.js">
  </script>
  <script type="text/javascript">
   $(function(){
    
   })
  </script>
 </head>
 <body>
  <div id="all">
   <div id="head">
    <h3>学科分类</h3>
    <span><img src="../img/close.gif"/></span>
   </div>
   <div id="content">
    <ul>
     <li>
      <a href="#">JavaEE</a><i> (1110) </i></li>
     <li>
      <a href="#">PHP</a><i> (230) </i></li>
     <li>
      <a href="#">BIG</a><i> (1430) </i></li>
     <li>
      <a href="#">Android</a><i> (1560) </i></li>
     <li>
      <a href="#">IOS</a><i> (870) </i></li>
     <li>
      <a href="#">H5</a><i> (1460) </i></li>
     <li>
      <a href="#">VR</a><i> (1450) </i></li>
     <li>
      <a href="#">小程序</a><i> (1780) </i></li>
     <li>
      <a href="#">演讲</a><i> (930) </i></li>
     <li>
      <a href="#">PPT</a><i> (3450) </i></li>
     <li>
      <a href="#">Word</a><i> (980) </i></li>
     <li>
      <a href="#">其他</a><i> (3230) </i></li>
    </ul>
    <div id="btn">
     <a href="#">简化</a>
    </div>
   </div>
  </div>
 </body>
</html>

5、jQuery对象和DOM对象

「关系:」

  • jQuery对象就是通过jQuery包装DOM对象后产生的对象

  • 注意:jQuery对象是包装DOM对象后产生的,但是jQuery无法使用DOM对象的任何方法,同理DOM对象也不能使用jQuery里的方法

「具体转换:」

  • jQuery和DOM对象互转

DOM转换成jQuery
var username = document.getElementById("username");
var $username = jQuery(username);
jQuery转换成DOM
var $username = jQuery("#username");
var username = $username[0];  //jQuery对象是一个数组对象

结语

本篇关于jQuery的的介绍就先到这里结束了,后续会出jQuery动画、Ajax、jQuery操作DOM以及jQuery事件的文章,敬请期待,谢谢大家支持!