本文介绍: 从封装一大堆函数的角度理解库,就是在这个库中,封装了很多预先定义好的函数里面比如动画animatehideshow比如获取元素等。3.x版本:不兼容 IE6, 7, 8,更加的精简(在国内不流行,因为国内使用 jQuery 的主要目的就是兼容 IE6, 7, 8)在对象事件中,$(this) 表示当前操作的 jQuery 对象,$(this).index() 表示当前元素的索引号。jQuery 选择器是 jQuery 为我们提供的一组方法,让我们更加方便的获取页面中的元素

一、jQuery基本介绍


jQuery 是一个快速简洁
JavaScript,其设计的宗旨是“write Less,Do More”,即倡导写更少的代码,做更多的事情。

1.1 JavaScript

仓库可以把很多东西放到这个仓库里面。找东西只需要仓库里面查找到就可以了。

JavaScript:即 library,是一个封装好的特定的集合方法函数)。从封装一大堆函数的角度理解库,就是在这个库中,封装了很多预先定义好的函数里面比如动画animatehideshow,比如获取元素等。

简单理解: 就是一个JS 文件里面我们原生js代码进行了封装存放里面。这样我们可以快速高效的使用这些封装好的功能了。

比如 jQuery,就是为了快速方便的操作DOM,里面基本都是函数(方法

常见的JavaScript 库

二、jQuery基本使用


2.1 jQuery版本

jQuery版本有很多,分为 1.x、2.x、 3.x

  • 3.x版本:不兼容 IE6, 7, 8,更加的精简(在国内不流行,因为国内使用 jQuery 的主要目的就是兼容 IE6, 7, 8)

1.x 和 2.x 版本 jquery 都不再更新版本了,现在只更新3.x版本

2.2 jQuery下载

官网https://jquery.com/

2.3 使用 jQuery

<!– 服务器本地库 –&gt;

<scriptsrc=”./jquery-3.6.0.js“&gt;</script&gt;

<!–

CDN远程

项目上线时,一般使用比较靠谱的CDN资源库,减轻服务器负担

[https://www.bootcdn.cn/](https://www.bootcdn.cn/)搜索`jQuery`,复制`<script&gt;`标签到项目即可使用

–&gt;

<div>Content</div>

<scriptsrc=”./jquery-3.6.0.js“></script>

<script>

$(‘div‘).hide();

</script>

2.4 jQuery 闭包结构

打开jQuery库查看后 有一个基本架构如下

( function( global, factory ) {
    
} )();

jQuery 具体的实现,都被包含在了一个立即执行函数构造的闭包里面,为了不污染全局作用域,只在后面暴露 $ 和 jQuery 这 2 个变量给外界。

2.5 jQuery 的 2 把利器

// jQuery核心代码
(function(window){
    varjQuery=function(){
        returnnewjQuery.fn.init();
    }
    window.$=window.jQuery=jQuery
})(window)

jQuery 核心函数

简称:jQuery函数($/jQuery),jQuery库向外直接暴露的就是$/jQuery

引入jQuery库后,直接使用即可

  • 当函数用:$(xxx)

// jQuery函数:直接可用
console.log($, typeof$);  // ƒ ( selector, context ) {}    function
console.log(jQuery===$); // true

jQuery 核心对象

简称:jQuery对象

得到jQuery对象:执行jQuery函数返回的就是jQuery对象

使用jQuery对象:$obj.xxx()

// jQuery对象:执行jQuery函数得到它
console.log($(), typeof$(), $() instanceofObject); // jQuery.fn.init {} "object" true

2.5.1 jQuery 函数的使用

作为一般函数调用:$(param)

  1. 参数为函数:当 DOM 加载完成后,执行回调函数

  1. 参数选择器字符查找所有匹配标签并将它们封装成jQuery对象

  1. 参数为 DOM 对象:将 dom 对象封装成jQuery对象

  1. 参数html 标签字符串(用得少):创建标签对象并封装成jQuery对象

作为对象使用:$.xxx()

// 需求1.点击按钮显示按钮的文本显示一个新的输入框
// 1、参数为函数:当 DOM 加载完成后,执行回调函数
$(function () { // 绑定文档加藏完成的监听
    // 2、参数为选择字符查找所有匹配的标签并将它们封装成`jQuery`对象
    $("#btn").click(function () {
        // alert(this.innerHTML); // this是什么?发生事件dom元素(<button>)
        // 3、参数为 DOM 对象:将 dom 对象封装成`jQuery`对象
        alert($(this).html());
        // 4、参数为 html 标签字符串(用得少):创建标签对象并封装成`jQuery`对象
        $('<input type="text" name="msg3"><br/>').appendTo("div");
    });
    
    // 需求2.遍历输出数组中所有元素vararr= [3, 7, 4];
    $.each(arr, function (index, item) {
        console.log(index, item); // 0 3    1 7    2 4
    });
})

2.5.2 jQuery 对象的使用

理解

执行jQuery核心函数返回的对象

jQuery对象内部包含的是 dom 元素对象的伪数组(可能只有一个元素)

jQuery对象拥有很多有用的属性方法,让程序员能方便的操作 dom

属性方法

这里我们先学习jQuery对象的基本行为,其他的不放在当前章节

2.6 入口函数

一般代码写在页面底部,等元素加载完,才能执行 jQuery 代码,或者可以使用下方入口函数解决

<scriptsrc="./jquery-3.6.0.js"></script>
<script>
    $(document).ready(function () {
        //
    });
</script>

等待页面 DOM 加载完毕后执行,相当于原生 js 中 DOMContentLoaded

<scriptsrc="./jquery-3.6.0.js"></script>
<script>
    $(function(){
        //
    })
</script>

<scriptsrc="./jquery-3.6.0.js"></script>
<script>
    $().ready(function() {
        //
    });
</script>

jQuery 入口函数与 window.onload 的对比

三、选择


jQuery 选择器是 jQuery 为我们提供的一组方法,让我们更加方便的获取页面中的元素

3.1 基本选择器

名称

用法

描述

ID选择器

$(‘#id‘);

获取指定ID的元素

类选择器

$(‘.class‘);

获取同一类class的元素

标签选择器

$(‘div‘);

获取同一类标签的所有元素

并集选择器

$(‘div,p,li‘);

使用逗号分隔,只要符合条件之一就可。

交集选择器

$(‘div.redClass’);

获取classredClassdiv元素

属性选择器

$(‘input[name=username]’)

获取 input 标签中 name 属性为 username 的元素

注意:jQuery选择器返回的是jQuery对象。

<scripttype="text/javascript">
    //常用选择器
    //根据id获取元素 获取到的结果:类数组对象
    console.log( $('#div0') );
    console.log( $('#div0')[0] );
    //根据class获取元素
    console.log( $('.div_1') );
    //根据标签名称来获取元素
    console.log( $('div') );
    //根据属性获取元素
    console.log( $('input[name=username]') );
    //根据表单元素属性获取元素
    console.log( $(':checked') );
</script>

3.2 层级选择器

名称

用法

描述

子代选择器

$(‘ul > li‘);

使用 > 号,获取儿子层级的元素,注意,并不会获取孙子层级的元素

后代选择器

$(‘ul li‘);

使用空格,代表后代选择器,获取ul下的所有li元素,包括孙子等

3.3 过滤选择器

这类选择器都带冒号:

名称

用法

描述

:eq(index

$(‘li:eq(2)’).css(‘color‘, ‘red‘);

获取到的li元素中,选择索引号为2的元素,索引号index从0开始。

:odd

$(‘li:odd‘).css(‘color‘, ‘red‘);

获取到的li元素中,选择索引号奇数的元素

:even

$(‘li:even’).css(‘color‘, ‘red’);

获取到的li元素中,选择索引号为偶数的元素

3.4 jQuery 筛选方法

名称

用法

描述

children(selector)

$(‘ul‘).children(‘li’)

相当于$(‘ul>li’),子类选择器

find(selector)

$(‘ul‘).find(‘li’);

相当于$(‘ul li’),后代选择器

siblings(selector)

$(‘#first‘).siblings(‘li’);

查找兄弟节点,不包括自己本身。

parent()

$(‘#first‘).parent();

查找父亲

parents()

$(‘li’).parents();

查找祖先元素

eq(index)

$(‘li’).eq(2);

相当于$(‘li:eq(2)’),index从0开始

next()

$(‘li’).next()

找下一个兄弟

prev()

$(‘li’).prev()

找上一次兄弟

closest

$(‘li’).closest(‘ul‘)

找最近一个祖先元素

3.5 this 和 当前索引

在对象的事件中,$(this) 表示当前操作的 jQuery 对象,$(this).index() 表示当前元素的索引

$("li").click(function () {
    console.log($(this).index());
}

各位猿友参考学习,有错误请私信,感谢指出!!!

原文地址:https://blog.csdn.net/weixin_73320743/article/details/129723897

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任

如若转载,请注明出处:http://www.7code.cn/show_16749.html

如若内容造成侵权/违法违规/事实不符,请联系代码007邮箱suwngjj01@126.com进行投诉反馈,一经查实,立即删除

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注