JQuery知识大全

蓝桥杯Web备赛

如想看其他web知识点,可以在蓝桥杯web专栏去找找看哦



前言

如需要获取更多学习和备赛资源的话可以去 蓝桥杯官网 找找


JQuery知识大全

在这里插入图片描述

考题类型:代码填空,场景实战

1、基本选择器

  • 元素选择器
jQuery对象.css("属性名", "属性值"); // 例如修改 width、height 等
  • ID 选择器
$("#id名");

$().css({"属性1":"属性值1","属性2":"属性值2"...})//多个属性值要修改时
  • 类选择器
$(".id名")

$().css({"属性1":"属性值1","属性2":"属性值2"...})//多个属性值要修改时
  • 群组选择器
$("选择器1, 选择器2,...");
  • 通配符选择器
$("*");

2、层次选择器

  • 后代选择器
$("M N");
//其中 N 是 M 的后代元素  后代元素(包含儿子、孙子、重孙子等)。
  • 子代选择器
$("M>N");// 对指定标签的子代元素进行操作。
  • 兄弟选择器
$("M~N"); //能够选择指定元素M后面的所有兄弟元素。
  • 相邻选择器
$("M+N"); // 选择下一个兄弟节点 N

3、属性选择器

选择器说明
E[attr]对带有 attr 属性的 E 元素进行操作。
E[attr="value"]对 attr 值等于 value 的 E 元素进行操作。
E[attr !="value"]对 attr 值不等于 value 的 E 元素进行操作。
E[attr ^="value"]对带有 attr 属性,其属性值以 value 字符串开头的 E 元素进行操作。
E[attr $="value"]对带有 attr 属性,其属性值以 value 字符串结尾的 E 元素进行操作。
E[attr *="value"]对带有 attr 属性,其属性值包含 value 字符串的 E 元素进行操作。
E[attr ~="value"]对带有 attr 属性,其属性值为 value 或者包含 value 的 E 元素进行操作。
`E[attr=“value”]`

4、伪类选择器

  • 位置伪类选择器

常见的位置伪类选择器如下所示:

选择器说明
:first选取指定元素的第一个该元素。
:last选取指定元素的最后一个该元素。
:odd选取指定元素序号为奇数的所有该元素。
:even选取指定元素序号为偶数的所有该元素。
:eq(n)选取指定元素的第 n 个该元素(注意:下标从0开始计数)。
:lt(n)选择指定元素中小于 n 的所有该元素。
:gt(n)选取指定元素中大于 n 的所有该元素。
  • 可见性伪类选择器

可见性伪类选择器如下所示:

选择器说明
:visible选取所有可见元素。
:hidden选取所有不可见元素。
  • 内容伪类选择器

内容伪类选择器如下所示:

选择器说明
:contains(text)对包含指定 text 文本的元素进行操作。
:has(selector)对包含指定选择器的元素进行操作。
:parent对含有文本或者子元素的元素进行操作。
:empty对空元素进行操作。
<script>
      $(function () {
        $("td:contains('1')").css("color", "#ade498");// 给 td 元素中包含内容 1 的元素设置绿色字体。
        $("tr:has(td)").css("background-color", "#e1ffc2");// 给包含 td 元素的 tr 元素设置背景颜色。
        $("td:empty").append("10"); // 在指定元素里添加内容
        $("td:parent").append("❤")// 给是父亲的 td 元素添加文字内容。
      });
    </script>
  • 表单伪类选择器

表单伪类选择器如下所示:

选择器说明
:input选取所有 input 元素。
:button选取所有 input 类型为 button 的元素。
:submit选取所有 input 类型为 submit 的元素。
:reset选取所有 input 类型为 reset 的元素。
:text选取所有 input 类型为 text 的元素。
:textarea选取所有多行文本框。
:password选取所有 input 类型为 password 的元素。
:radio选取所有 input 类型为 radio 的元素。
:checkbox选取所有 input 类型为 checkbox 的元素。
:image选取所有图片域。
:file选取所有 input 类型为 file 的元素。
  • 表单对象属性选择器

表单对象属性选择器如下所示:

选择器说明
:checked选取所有被选中的表单元素。
:selected选取被选中的表单元素项。
:enabled选取所有可用的表单元素。
:disabled选取所有不可用的表单元素。
:read-only选取只读权限的表单元素。
:focus选取所有获得焦点的表单元素。

5、JQuery中的事件

  • 页面事件

语法:

jQuery 对象.事件名(事件处理函数)

例如:

$(document).ready(function () {});//ready函数类似于 JavaScript 中的 onload 事件,但是它文档中引入的外部图片、 css 或者 js 文件就算没完成加载,该事件也可以执行
// 可以简写成
$(function () {});
  • 鼠标事件

鼠标事件有以下几种:

事件说明
click单击左键事件。
mouseover鼠标移入事件。
mouseout鼠标移出事件。
mousedown鼠标按下事件。
mouseup鼠标松开事件。
mousemove鼠标移动事件。
  • 键盘事件

  • 表单事件

  • 滚动事件

  • 绑定事件

在 jQuery 中,我们使用 on 或 bind 方法可以绑定一个或者多个事件。

其语法格式为:

jQuery对象.on(事件类型, 事件处理函数);

jQuery对象.bind(事件类型, 事件处理函数);
  • 合成事件

合成事件就是一个事件来代表多个事件,例如:

我们可以使用 hover 方法来给元素同时绑定鼠标移入和移出的处理函数。即:

hover = mouseover + mouseout

其语法结构为:

jQuery对象.hover(mouseover的事件处理函数, mouseout的事件处理函数);

函数 1 是鼠标移入事件会触发的处理函数;函数 2 是鼠标移出事件会触发的处理函数。

  • 自定义事件

其语法格式为:

jQuery对象.on(事件类型, 处理函数); // bind 也可以

jQuery对象.trigger(事件类型);
$("<标签名></标签名>");// 直接创建元素节点
$("<标签名>文本内容</标签名>");// 创建带文本的元素节点
$("<标签名 属性='属性值'>文本内容</标签名>");// 创建带属性的元素节点

6、DOM操作

元素的插入

  • 子级插入方法,包括 prepend()prependTo()append()appendTo()
  • 同级插入方法,包括 before()insertBefore()after()insertAfter()

prepend()prependTo() 是在元素子级开头插入元素。

prepend 方法的语法格式为:

// 在 A 元素的子级最前面的位置插入B
$(A).prepend(B);

prependTo 方法的语法格式为:

// 在 A 元素的子级最前面的位置插入B
$(B).prependTo(A);

prepend()prependTo() 起到的作用是一样的,只不过使用格式是颠倒的

append()appendTo() 是在元素子级尾部插入元素。

append 方法的语法格式为:

// 在 A 元素子级的最后面位置追加 B
$(A).append(B);

appendTo 方法的语法格式为:

// 在 A 元素子级的最后面位置追加 B
$(B).appendTo(A);

appendappendTo 起到的作用也是一样的,只不过使用格式是颠倒的

before()insertBefore() 是在该元素的前面插入元素。

before 方法的语法格式为:

// 在 A 的前面插入 B
$(A).before(B);

insertBefore 方法的语法格式为:

// 在 A 的前面插入 B
$(B).insertBefore(A);

beforeinsertBefore 方法的作用也是相同的,只是使用格式上是颠倒的

fter()insertAfter() 是在元素的后面插入元素。

after 方法的语法格式为:

// 在 A 的后面插入 B
$(A).after(B);

insertAfter 方法的语法格式为:

// 在 A 的后面插入 B
$(B).insertAfter(A);

afterinsertAfter 方法的作用也是相同的,只是使用格式上是颠倒的。

元素的删除

$().remove();// 将指定的元素及其子元素删除。
$().empty();// 清空指定元素的后代元素和内容的。

元素的替换

replaceWith 方法和 replaceAll 方法都可以用来把指定元素替换成其他元素,只是在使用格式上有些差别。

其语法格式为:

// 将 A 替换为 B
$(A).replaceWith(B);

// 将 A 替换为 B
$(B).replaceAll(A);

元素的遍历

在 jQuery 中,each 方法是用于元素遍历的。

其语法格式为:

$().each(function (index, element) {});

attr 方法可以用来获取指定元素的属性值,也可以用来设置指定属性的属性值。

其语法格式为:

jQuery对象.attr("属性名"); // 获取属性
jQuery对象.attr("属性名", "属性值"); // 修改属性

removeAttr 方法可以删除指定元素的某个属性。

其语法格式为:

jQuery对象.removeAttr("属性名");

7、样式操作

这里给大家介绍四种样式操作的方法,分别是:

  • css 方法

css 方法可以用来获取指定属性的属性值,也可以用来设置属性值。

// 获取指定属性的属性值
$().css("属性名");

// 设置属性值
$().css("属性名", "属性值");
  • addClass 方法

addClass 方法是用来添加类选择器的。

其使用格式为:

$().addClass("类名");
  • removeClass 方法

removeClass 方法可以用来移除已有的类选择器。

其语法格式为:

$().removeClass("类名");
  • toggleClass 方法

toggleClass 方法是用来切换类选择器的。

其使用格式为:

$().toggleClass("类名");

8、内容操作

  • html 方法

html 方法可用来获取 HTML 文档中指定元素内部的元素标签和标签中的内容,也可以给元素添加内容。

其语法格式为:

// 获取元素内容
$().html();
// 设置元素内容
$().html("内容");
  • text 方法

text 方法可以获取指定标签里的文本,也可以为指定标签添加文本。

其语法格式为:

// 获取指定标签中的文本
$().text();
// 给指定标签设置文本
$().text("内容");
  • val 方法

val 方法用于获取表单元素的值,也可以给表单元素设置值。

// 获取表单元素的值
$().val ();
// 给表单元素设置值
$().val ("内容");

小总结

  • 节点的创建:使用 $() 来创建元素节点。
  • 元素的插入:分为子级插入和同级插入。
    • 子级插入方法,包括 prepend()prependTo()append()appendTo()
    • 同级插入方法,包括 before()insertBefore()after()insertAfter()
  • 元素的删除:使用 remove() 或者 empty() 方法可以删除元素。
  • 元素的替换:使用 replaceWith() 或者 replaceAll() 可以替换元素。
  • 元素的遍历:使用 each 可以遍历元素。
  • 属性操作:使用 attr() 设置属性、获取属性和使用 removeAttr 删除属性。
  • 样式操作:使用 css() 获取样式,使用 addClass() 添加样式,使用 removeClass() 移除样式,使用 toggleClass() 切换类选择器。
  • 内容操作:使用 html() 获取指定元素内部的元素标签和标签中的内容 ,使用 text() 获取指定标签里的文本或者给指定标签添加文本,使用 val() 获取表单元素的值或者给表单元素设置值。

9、动画

显示与隐藏

其语法格式为:

//显示
$().show(speed, easing, callback);
//隐藏
$().hide(speed, easing, callback);
//speed 可选参数,用于设置显示的速度,其值可以是以毫秒为单位的数值,也可以是 slow、normal、fast 等值。
//easing 可选参数,用于设置动画在不同点上元素的速度,其默认值是 `swing`,表示开头和结尾的速度慢,中间的速度快。
//callback 可选参数,是方法执行完成后,执行的一个函数。

注意:show() 只适用于通过 jQuery 方法和 CSS 中 display 属性隐藏的元素,不适用于通过 visibility 隐藏的元素。

淡入与淡出

其语法格式为:

// 淡入
$().fadeIn(speed, easing, callback);

// 淡出
$().fadeOut(speed, easing, callback);
//speed 可选参数,用于设置显示的速度,其值可以是以毫秒为单位的数值,也可以是 slow、normal、fast 等值。
//easing 可选参数,用于设置动画在不同点上元素的速度,其默认值是 swing,表示开头和结尾的速度慢,中间的速度快。
//callback 可选参数,是方法执行完成后,执行的一个函数。

自定义动画

其语法格式为:

$().animate({ style }, speed, callback);

队列动画

队列动画其语法格式为:

$().animate().animate()....animate();

回调函数

回调函数的格式如下:

$().animate({ style }, speed, callback);

停止动画

stop 方法的语法格式为:

$().stop(stopAll, goToEnd);
//stopAll 代表是否停止所有动画,其取值为 true 或者 false,当为 true 时代表停止当前及后面的所有动画,当为 false 时代表只停止当前动画。
// goToEnd 代表停止动画后是否跳转到最后的动画效果,其取值也是布尔类型。 true 时,停止后跳转,为 false 时则不跳转。

延迟动画

其语法格式为:

$().delay(speed);
  • 隐藏(hide)与显示(show)
  • 淡入(fadeIn)与淡出(fadeOut)
  • 自定义动画(animate)
  • 队列动画(多个 animate)
  • 回调函数(动画执行完毕以后的回调)
  • 停止动画(stop)
  • 延迟动画(delay)

10、遍历

  • 遍历祖先元素

    • parent 方法是用来查找指定元素的父元素的。

    • parents 方法是用来查找指定元素的所有祖先元素的。

  • 遍历兄弟元素

    • 前向兄弟元素查找

      $().prev(); // 查找指定元素前向第一个元素
      
      $().preAll(); // 查找指定元素前向所有元素
      
    • 后向兄弟元素查找

      $().next(); // 查找指定元素的第一个后向兄弟元素
      
      $().nextAll(); // 查找指定元素的所有后向兄弟元素
      
    • 所有兄弟元素查找

      $().siblings();
      
  • 遍历后代元素

    • jQuery对象.children();// children 方法
      jQuery对象.find(selector);// find 方法
      //children 方法和 find 方法都是用来查找元素的子元素的。
      //区别是 children 只能获取元素的儿子节点,而 find 方法可以获取元素的所有符合条件的后代节点。
      
  • 过滤元素

    • 类名过滤

      在 jQuery 中使用 hasClass 方法可以用来判断指定元素是否包含该类名的元素。

      其使用格式为:

      $().hasClass("类名");
      
    • 下标过滤

      其语法格式为:

      $().eq(n);//  jQuery 中使用 eq 方法可以实现下标过滤。
      
    • 判断过滤

      其使用格式为:

      $().is(selector);// 在 jQuery 中可以使用 is 方法来判断指定元素中是否有符合条件的存在。
      //is 方法返回的也是布尔类型的值,符合条件返回 true,反之 false。
      
    • 反向过滤

      其使用格式为:

      $().not(selector|function)//  jQuery 中使用 not 方法可以选择不符合条件的元素。
      

小总结

  • 遍历祖先元素:parent 和 parents 方法可以用来查找指定元素的祖先元素。
  • 遍历兄弟元素:有三种兄弟元素查找的方法,分别为
    • 前向兄弟元素查找 prev、preAll。
    • 后向兄弟元素查找 next、nextAll。
    • 所有兄弟元素查找 siblings()。
  • 遍历后代元素:children 和 find。
  • 过滤元素:有四种过滤方法,分别为
    • 类名过滤 hasClass。
    • 下标过滤 eq。
    • 判断过滤 is。
    • 反向过滤 not。

11、AJAX

  • load 方法

    其语法格式为:

    $().load(url, data, callback);
    // load() 方法让 AJAX 去请求服务器,并从中获得数据,最后将获得的数据放入到指定的元素中。
    // url 是被加载页面的地址,它是必选参数。
    // data 是发送到服务器的数据,它是可选参数。
    // callback 是请求完成后的回调函数,它是可选参数。
    
    // 这里请注意,load 方法中的回调函数有三个额外的参数,以下所示:
    // response:服务器响应的结果数据。
    // status:服务器响应的状态。
    // xhr:XMLHttpRequest 对象。
    
  • get 方法

    其语法格式为:

    $.get(url, data, callback(data, status, xhr), dataType);
    // url:是请求的 url,它是必须参数。
    // data:是发送到服务器的数据,它是可选参数。
    // callback:是当请求成功时的回调函数,该方法包含三个参数,data 是请求的结果数据,status 是包含请求的状态,xhr 是 
    // XMLHttpRequest 对象。
    // dataType:是服务器返回的数据格式,如 xml、html、json 等,默认的 jQuery 会智能判断它的类型。
    
  • post 方法

    前面我们学习了 get 方法,从练习中我们可以知道用 GET 请求指定页面,可以返回实体主体,它的请求会被缓存。post 方法是用的 POST 请求,它向指定资源提交数据进行处理请求,该请求不会被缓存。

    接下来我们看看 jQuery 中 post 方法的应用吧!

    post 方法的使用格式如下:

$.post(url, data, callback(data, textStatus, jqXHR), dataType);
//url:是请求的 url,它是必须参数。
//data:是发送到服务器的数据,它是可选参数。
//callback:是当请求成功时的回调函数,该方法包含三个参数,data是请求的结果数据,textStatus是包含请求的状态,jqXHR是 XMLHttpRequest对象。
//dataType:是服务器返回的数据格式,如 xml、html、json 等。

使用 get 方法时,发送的数据内容会显示到 URL 上,而 post 方法发送的数据则不会显示。

  • ajax 方法

    ajax 方法也是向服务器请求数据的,在方法内部我们可以指定是使用 POST 请求还是使用 GET 请求。在日常开发中 ajax 方法是最常用的。

    ajax 方法的语法格式为:

    $.ajax({ 配置项 });
    
    参数类型描述
    urlString发送请求地址,默认为当前页面地址。
    typeString请求数据的方式(POST 或 GET),默认为 GET。
    timeoutNumber设置请求超时的时间,其单位为毫秒。
    dataObject 或 String发送到服务器的数据。
    dataTypeString服务器返回的数据类型。
    beforeSendFunction发送请求前可以修改的 XMLHttpRequest 对象的函数。
    completeFunction请求完成后的回调函数,这里的回调函数无论请求成功或者失败都会被调用。
    successFunction请求成功后的回调函数。
    errorFunction请求失败后被调用的函数。
    contentTypeString发送信息至服务器时内容的编码形式。
    asyncBoolean设置请求方式,当值为 true 时,所有请求为异步请求;当值为 false 时,所有请求为同步请求,默认值为 true。
    cacheBoolean设置浏览器是否缓存当前页面,当值为 true 时浏览器会缓存该页面,反之不会,默认值为 false。
  • getJSON

    在前面我们学了 ajax 方法,当我们要向服务器发送一个 GET 请求并获取 JSON 类型的数据时,写法如下:

    $.ajax({
      type: "GET",
      dataType: "json",
      url: url,
      data: data,
      success: success,
    });
    
  • getScript

    getScript 也很容易理解,拆分成 get 和 Script 来看,get 是 GET 请求,Script 是 JavaSctip 文件,所以合在一起就是使用一个 GET 请求从服务器加载并执行一个 JavaScript 文件。

    其使用格式如下所示:

    $.getScript( url [, success(script, textStatus, jqXHR) ] )
    

总结

这是我这两天学习到的有关JQuery的知识,但是就是感觉学了还不会很快速的上手使用起来,还是得多加练习啊多加练习
而且现在的就业形势好难啊好难 很多人就选择去考研 好卷啊好卷 但是咱也不能放弃!!!

“ 要相信,所有的不美好都是为了迎接美好,所有的困难都会为努力让道! ”

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值