JS学习日记(jQuery库)

   前言

今天先更新jQuery库的介绍,它是一个用来帮助快速开发的工具

介绍

jQuery是一个快速,小型且功能丰富的JavaScript库,jQuery设计宗旨是“write less,do more”,即倡导写更少的代码,做更多的事,它封装JavaScript常用的功能代码,提供一种简便的方式进行使用,大大提高了开发效率,jQuery目前支持的浏览器包括Chrome,edge,firefox,ie9+,Safari,Oper等。

jQuery的优势:

1.轻量级:jQuery非常轻巧,压缩后只有30kb

2.强大的选择器,jQuery支持css1.0到3.0的几乎所有选择器以及jQuery自定义的选择器

3.出色的DOM封装,jQuery封装了大量常用的DOM操作,开发者无需关心细节轻松上手使用

4.jQuery有着可靠的事件处理机制

5.出色的浏览器兼容

6.链式操作方式

7.丰富的插件支持

8.完善的文档

9.最重要的一点,它是开源的

搭建开发环境

工欲善其事,必先利其器,我们先学会如何搭建jQuery的开发环境,首先,它并不需要安装,只需把jQuery文件放在网站上一个公共的位置,在页面使用时,直接通过script标签进行引入

jQuery获取方法:

1.官网下载

2.使用CDN的形式载入jQuery

jQuery官网:http://jquery.com/

后续就是一点开发版(未压缩)和发布版(有压缩)的区别了,这里没有太大区别,这里就不过多赘述

CDN方式

如果不希望下载jQuery,则可以使用CDN的方式载入jQuery:

Google CDN:

<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.6.0/jquery.min.js"></script>

jQuery官方CDN:

<script src="https://code.jquery.com/jquery-3.6.0.min.js"></script>

百度:

<script src="https://apps.bdimg.com/libs/jquery/3.6.0/jquery.min.js"></script>

阿里云CDN:

<script src="https://lib.aliyun.com/js/jquery-3.6.0.min.js"></script>

 在HTML中引入jQuery

将选定的CDN链接添加到HTML文件的<head><body>标签中。通常建议在<head>标签中引入,以便在页面加载时尽早加载jQuery:

<!DOCTYPE html>
<html lang="zh-CN">
<head>
    <meta charset="UTF-8">
    <title>使用jQuery CDN</title>
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.6.0/jquery.min.js"></script>
    <!-- 其他头部内容 -->
</head>
<body>
    <!-- 页面内容 -->
    <script>
        $(document).ready(function(){
            // 在这里编写使用jQuery的代码
            console.log("jQuery已加载,版本:" + $.fn.jquery);
        });
    </script>
</body>
</html>

注意事项

  • 版本选择: 根据项目需求选择合适的jQuery版本。较新的版本通常包含更多功能和更好的性能,但可能不兼容旧浏览器。
  • 缓存策略: 使用CDN可以提高加载速度,因为许多用户可能已经缓存了相同的jQuery文件。
  • 安全性: 确保从可信的CDN提供商获取jQuery文件,以避免潜在的安全风险

webAPI与jQuery的区别

1. jQuery的适用性

  • 简化DOM操作和事件处理

    • jQuery在早期Web开发中非常流行,因为它简化了复杂的JavaScript操作,如DOM选择、事件处理和动画效果。这使得开发者能够更快速地构建动态网页。
    • 然而,现代JavaScript(ES6及以上版本)已经引入了许多新特性,如querySelectoraddEventListenerfetch等,这些功能在很大程度上替代了jQuery的核心功能。
  • 浏览器兼容性

    • jQuery的一个重要优势是其跨浏览器的兼容性,解决了不同浏览器之间的兼容性问题。然而,现代浏览器对JavaScript的支持已经非常完善,许多jQuery的功能在原生JavaScript中也能很好地工作。
  • 社区和生态系统

    • 尽管jQuery仍然有庞大的用户基础和丰富的插件生态系统,但近年来,许多开发者转向使用更现代的框架和库(如React、Vue.js、Angular等),这使得jQuery的社区活跃度有所下降。
  • 适用场景

    • 如果项目需要快速开发简单的网页应用,或者需要兼容非常旧的浏览器,jQuery仍然是一个不错的选择。
    • 然而,对于大型、复杂的单页应用(SPA),jQuery可能显得力不从心。

2. Web API的适用性

  • 构建RESTful服务

    • Web API主要用于构建RESTful服务,提供数据接口供前端应用调用。它是前后端分离架构的核心部分。
    • 现代Web应用通常采用前后端分离的模式,前端使用JavaScript框架(如React、Vue.js)构建用户界面,后端通过Web API提供数据服务。
  • 跨平台和跨语言支持

    • Web API基于HTTP协议,使用JSON或XML格式进行数据传输,具有良好的跨平台和跨语言支持。这使得Web API可以轻松地与其他系统和服务集成。
  • 可扩展性和维护性

    • Web API具有良好的可扩展性和维护性。通过定义清晰的接口规范,可以方便地扩展功能和维护代码。
    • 使用Web API可以更好地组织代码结构,提高开发效率和代码质量。
  • 适用场景

    • 对于需要构建复杂、动态的Web应用,特别是需要与多个服务或系统集成的应用,Web API是必不可少的。
    • 现代Web开发中,Web API广泛应用于单页应用(SPA)、移动应用、桌面应用等场景。

3. 比较与选择

  • 功能定位不同

    • jQuery是一个前端库,专注于简化JavaScript开发;而Web API是一个后端工具,用于构建数据接口。
    • 两者在功能和应用场景上有明显的区别,不能直接比较谁更“适合”现代Web开发,因为它们解决的问题不同。
  • 现代开发趋势

    • 现代Web开发越来越倾向于前后端分离的架构,前端使用JavaScript框架(如React、Vue.js)构建用户界面,后端通过Web API提供数据服务。
    • 在这种架构下,Web API是不可或缺的,而jQuery的使用则逐渐减少。
  • 选择建议

    • 如果项目需要构建复杂、动态的Web应用,特别是需要前后端分离的架构,建议使用Web API来构建后端服务。
    • 如果项目需要快速开发简单的网页应用,或者需要兼容非常旧的浏览器,可以考虑使用jQuery。
    • 对于大多数现代Web开发项目,建议使用更现代的JavaScript框架(如React、Vue.js)和Web API来构建应用。

4. 结论

在现代Web开发中,Web API是构建后端服务和数据接口的核心工具,适用于大多数需要前后端分离的应用场景。而jQuery虽然仍然有其应用场景,但在现代开发中逐渐被更现代的JavaScript框架和库所取代。因此,从整体上看,Web API更适合现代Web开发的需求。

如果项目需要构建复杂、动态的Web应用,建议优先考虑使用Web API,并结合现代前端框架(如React、Vue.js)来实现最佳的开发效果。

这篇日记已经被你看完了!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/918269.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

stm32下的ADC转换(江科协 HAL版)

十二. ADC采样 文章目录 十二. ADC采样12.1 ADC的采样原理12.2 STM32的采样基本过程1.引脚与GPIO端口的对应关系2.ADC规则组的四种转换模式(**)2.2 关于转换模式与配置之间的关系 12.3 ADC的时钟12.4 代码实现(ADC单通道 & ADC多通道)1. 单通道采样2. 多通道采样 19.ADC模数…

124. 二叉树中的最大路径和【 力扣(LeetCode) 】

文章目录 零、原题链接一、题目描述二、测试用例三、解题思路四、参考代码 零、原题链接 124. 二叉树中的最大路径和 一、题目描述 二叉树中的 路径 被定义为一条节点序列&#xff0c;序列中每对相邻节点之间都存在一条边。同一个节点在一条路径序列中 至多出现一次 。该路径…

【安全科普】NUMA防火墙诞生记

一、我为啥姓“NUMA” 随着网络流量和数据包处理需求的指数增长&#xff0c;曾经的我面对“高性能、高吞吐、低延迟”的要求&#xff0c;逐渐变得心有余而力不足。 多CPU技术应运而生&#xff0c;SMP&#xff08;对称多处理&#xff09;和NUMA&#xff08;非一致性内存访问&a…

免费送源码:Java+Springboot+MySQL Springboot多租户博客网站的设计 计算机毕业设计原创定制

Springboot多租户博客网站的设计 摘 要 博客网站是当今网络的热点&#xff0c;博客技术的出现使得每个人可以零成本、零维护地创建自己的网络媒体&#xff0c;Blog站点所形成的网状结构促成了不同于以往社区的Blog文化&#xff0c;Blog技术缔造了“博客”文化。本文课题研究的“…

数字IC后端实现之Innovus specifyCellEdgeSpacing和ICC2 set_placement_spacing_rule的应用

昨天帮助社区IC训练营学员远程协助解决一个Calibre DRC案例。通过这个DRC Violation向大家分享下Innovus和ICC2中如何批量约束cell的spacing rule。 数字IC后端手把手实战教程 | Innovus verify_drc VIA1 DRC Violation解析及脚本自动化修复方案 下图所示为T12nm A55项目的Ca…

IntelliJ+SpringBoot项目实战(七)--在SpringBoot中整合Redis

Redis是项目开发中必不可少的缓存工具。所以在SpringBoot项目中必须整合Redis。下面是Redis整合的步骤&#xff1a; &#xff08;1&#xff09;因为目前使用openjweb-sys作为SpringBoot的启动应用&#xff0c;所以在openjweb-sys模块的application-dev.yml中增加配置参数&…

深挖C++赋值

详解赋值 const int a 10; int b a;&a 0x000000b7c6afef34 {56496} &a 0x000000b7c6afef34 {10} 3. &b 0x000000b7c6afef54 {10} 总结&#xff1a; int a 10 是指在内存中&#xff08;栈&#xff09;中创建一个int &#xff08;4 byte&#xff09;大小的空间…

java八股-jvm入门-程序计数器,堆,元空间,虚拟机栈,本地方法栈,类加载器,双亲委派,类加载执行过程

文章目录 PC Register堆虚拟机栈方法区(Metaspace元空间双亲委派机制类加载器 类装载的执行过程 PC Register 程序计数器&#xff08;Program Counter Register&#xff09;是 Java 虚拟机&#xff08;JVM&#xff09;中的一个组件&#xff0c;它在 JVM 的内存模型中扮演着非常…

11.12机器学习_特征工程

四 特征工程 1 特征工程概念 特征工程:就是对特征进行相关的处理 一般使用pandas来进行数据清洗和数据处理、使用sklearn来进行特征工程 特征工程是将任意数据(如文本或图像)转换为可用于机器学习的数字特征,比如:字典特征提取(特征离散化)、文本特征提取、图像特征提取。 …

STL序列式容器之list

相较于vector的连续性空间&#xff0c;list相对比较复杂&#xff1b;list内部使用了双向环形链表的方式对数据进行存储&#xff1b;list在增加元素时&#xff0c;采用了精准的方式分配一片空间对数据及附加指针等信息进行存储&#xff1b; list节点定义如下 template<clas…

算法日记 26-27day 贪心算法

接下来的题目有些地方比较相似。需要注意多个条件。 题目&#xff1a;分发糖果 135. 分发糖果 - 力扣&#xff08;LeetCode&#xff09; n 个孩子站成一排。给你一个整数数组 ratings 表示每个孩子的评分。 你需要按照以下要求&#xff0c;给这些孩子分发糖果&#xff1a; 每…

Linux下编译MFEM

本文记录在Linux下编译MFEM的过程。 零、环境 操作系统Ubuntu 22.04.4 LTSVS Code1.92.1Git2.34.1GCC11.4.0CMake3.22.1Boost1.74.0oneAPI2024.2.1 一、安装依赖 二、编译代码 附录I: CMakeUserPresets.json {"version": 4,"configurePresets": [{&quo…

Pytest-Bdd-Playwright 系列教程(9):使用 数据表(DataTable 参数) 来传递参数

Pytest-Bdd-Playwright 系列教程&#xff08;9&#xff09;&#xff1a;使用 数据表&#xff08;DataTable 参数&#xff09; 来传递参数 前言一、什么是 datatable 参数&#xff1f;Gherkin 表格示例 二、datatable 参数的基本使用三、完整代码和运行效果完整的测试代码 前言 …

C语言项⽬实践-贪吃蛇

目录 1.项目要点 2.窗口设置 2.1mode命令 2.2title命令 2.3system函数 2.Win32 API 2.1 COORD 2.2 GetStdHandle 2.3 CONSOLE_CURSOR_INFO 2.4 GetConsoleCursorInfo 2.5 SetConsoleCursorInfo 2.5 SetConsoleCursorPosition 2.7 GetAsyncKeyState 3.贪吃蛇游戏设…

使用 Prompt API 与您的对象聊天

tl;dr&#xff1a;GET、PUT、PROMPT。现在&#xff0c;可以使用新的 PromptObject API 仅使用自然语言对存储在 MinIO 上的对象进行总结、交谈和提问。在本文中&#xff0c;我们将探讨这个新 API 的一些用例以及代码示例。 赋予动机&#xff1a; 对象存储和 S3 API 的无处不在…

Oracle OCP认证考试考点详解082系列19

题记&#xff1a; 本系列主要讲解Oracle OCP认证考试考点&#xff08;题目&#xff09;&#xff0c;适用于19C/21C,跟着学OCP考试必过。 91. 第91题&#xff1a; 题目 解析及答案&#xff1a; 关于 Oracle 数据库中的索引及其管理&#xff0c;以下哪三个陈述是正确的&#x…

脑机接口、嵌入式 AI 、工业级 MR、空间视频和下一代 XR 浏览器丨RTE2024 空间计算和新硬件专场回顾

这一轮硬件创新由 AI 引爆&#xff0c;或许最大受益者仍是 AI&#xff0c;因为只有硬件才能为 AI 直接获取最真实世界的数据。 在人工智能与硬件融合的新时代&#xff0c;实时互动技术正迎来前所未有的创新浪潮。从嵌入式系统到混合现实&#xff0c;从空间视频到脑机接口&…

Element UI如何实现按需导入--Vue3篇

前言 在使用 Element UI 时&#xff0c;按需导入&#xff08;即按需引入&#xff09;是一个常见的需求&#xff0c;尤其是在构建大型应用时。按需导入可以显著减少打包后的文件体积&#xff0c;提升应用的加载速度。本文将详细介绍如何在项目中实现 Element UI 的按需导入&…

【设计模式】行为型模式(五):解释器模式、访问者模式、依赖注入

《设计模式之行为型模式》系列&#xff0c;共包含以下文章&#xff1a; 行为型模式&#xff08;一&#xff09;&#xff1a;模板方法模式、观察者模式行为型模式&#xff08;二&#xff09;&#xff1a;策略模式、命令模式行为型模式&#xff08;三&#xff09;&#xff1a;责…

.NET 9.0 中 System.Text.Json 的全面使用指南

以下是一些 System.Text.Json 在 .NET 9.0 中的使用方式&#xff0c;包括序列化、反序列化、配置选项等&#xff0c;并附上输出结果。 基本序列化和反序列化 using System; using System.Text.Json; public class Program {public class Person{public string Name { get; se…