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及以上版本)已经引入了许多新特性,如
querySelector
、addEventListener
、fetch
等,这些功能在很大程度上替代了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)来实现最佳的开发效果。
这篇日记已经被你看完了!
相关文章:

JS学习日记(jQuery库)
前言 今天先更新jQuery库的介绍,它是一个用来帮助快速开发的工具 介绍 jQuery是一个快速,小型且功能丰富的JavaScript库,jQuery设计宗旨是“write less,do more”,即倡导写更少的代码,做更多的事…...

Uni-APP+Vue3+鸿蒙 开发菜鸟流程
参考文档 文档中心 运行和发行 | uni-app官网 AppGallery Connect DCloud开发者中心 环境要求 Vue3jdk 17 Java Downloads | Oracle 中国 【鸿蒙开发工具内置jdk17,本地不使用17会报jdk版本不一致问题】 开发工具 HBuilderDevEco Studio【目前只下载这一个就…...
Linux的基本用法
Linux的基本用法涵盖多个方面,包括用户登录、系统操作、文件和目录管理、系统工具使用等。以下是对Linux基本用法的详细介绍: 一、用户登录与系统操作 用户登录 普通用户登录:选择用户名并输入密码。超级用户(root)登…...
如何找出爬取网站的来源IP呢?
1.背景 最近网站数据库性能很不稳定,查询性能在某段时间很慢,服务器CPU也很高,平常时间很低,感觉被爬虫恶意搞了,因此我分析了一下最近的nginx访问日志 2.方法 找出访问量最大20个ip [root100 nginx]# cat liuhaih…...
Java爬虫(Jsoup)详解
文章目录 Java爬虫(Jsoup)详解一、引言二、Jsoup 快速入门1、Jsoup 简介1.1、添加依赖 2、解析 HTML 文档2.1、解析 HTML 字符串2.2、从 URL 加载 Document2.3、解析 body 片断 三、数据抽取1、使用 DOM 方法遍历文档3.1、获取元素 2、使用选择器语法查找…...

力扣周赛:第424场周赛
👨🎓作者简介:爱好技术和算法的研究生 🌌上期文章:力扣周赛:第422场周赛 📚订阅专栏:力扣周赛 希望文章对你们有所帮助 第一道题模拟题,第二道题经典拆分数组/线段树都…...

预处理(1)(手绘)
大家好,今天给大家分享一下编译器预处理阶段,那么我们来看看。 上面是一些预处理阶段的知识,那么明天给大家讲讲宏吧。 今天分享就到这里,谢谢大家!!...
利用OpenAI进行测试需求分析——从电商网站需求到测试用例的生成
在软件测试工程师的日常工作中,需求分析是测试工作中的关键步骤。需求文档决定了测试覆盖的范围和测试策略,而测试用例的编写往往依赖于需求的准确理解。传统手工分析需求耗时长,尤其在面对大量需求和复杂逻辑时容易遗漏细节。本文将以电商网…...
深入探索:Scrapy深度爬取策略与实践
标题:深入探索:Scrapy深度爬取策略与实践 引言 在数据驱动的时代,深度爬取成为了获取丰富信息的重要手段。Scrapy,作为一个强大的Python爬虫框架,提供了多种工具和设置来帮助我们实现深度爬取。本文将详细介绍如何在…...

《生成式 AI》课程 第3講:訓練不了人工智慧嗎?你可以訓練你自己
资料来自李宏毅老师《生成式 AI》课程,如有侵权请通知下线 Introduction to Generative AI 2024 Spring 摘要 这一系列的作业是为 2024 年春季的《生成式 AI》课程设计的,共包含十个作业。每个作业都对应一个具体的主题,例如真假难辨的世界…...

如何编译 Cesium 源码
如何编译 Cesium 源码 Cesium 是一个开源的 JavaScript 库,用于构建 3D 地球和地图应用程序。它提供了一套强大的 API 和工具,使开发者能够创建丰富的地理空间应用。本文将指导您如何从 GitHub 下载 Cesium 源码,并在本地进行编译。 TilesB…...
前端开发设计模式——责任链模式
目录 一、定义和特点 1. 定义 2. 特点 二、实现方式 定义抽象处理者(Handler)类 创建具体处理者(ConcreteHandler)类 构建责任链 以下是一个用 JavaScript 实现的示例: 三、应用场景 1. 表单验证 2. 请求处…...

JavaWeb--MySQL
1. MySQL概述 首先来了解一下什么是数据库。 数据库:英文为 DataBase,简称DB,它是存储和管理数据的仓库。 像我们日常访问的电商网站京东,企业内部的管理系统OA、ERP、CRM这类的系统,以及大家每天都会刷的头条、抖音…...

Python | Leetcode Python题解之第564题数组嵌套
题目: 题解: class Solution:def arrayNesting(self, nums: List[int]) -> int:ans, n 0, len(nums)for i in range(n):cnt 0while nums[i] < n:num nums[i]nums[i] ni numcnt 1ans max(ans, cnt)return ans...

Spring Boot教程之Spring Boot简介
Spring Boot 简介 接下来一段时间,我会持续发布并完成Spring Boot教程 Spring 被广泛用于创建可扩展的应用程序。对于 Web 应用程序,Spring 提供了 Spring MVC,它是 Spring 的一个广泛使用的模块,用于创建可扩展的 Web 应用程序。…...

Qwen2-VL:发票数据提取、视频聊天和使用 PDF 的多模态 RAG 的实践指南
概述 随着人工智能技术的迅猛发展,多模态模型在各类应用场景中展现出强大的潜力和广泛的适用性。Qwen2-VL 作为最新一代的多模态大模型,融合了视觉与语言处理能力,旨在提升复杂任务的执行效率和准确性。本指南聚焦于 Qwen2-VL 在三个关键领域…...

【安全科普】NUMA防火墙诞生记
一、我为啥姓“NUMA” 随着网络流量和数据包处理需求的指数增长,曾经的我面对“高性能、高吞吐、低延迟”的要求,逐渐变得心有余而力不足。 多CPU技术应运而生,SMP(对称多处理)和NUMA(非一致性内存访问&a…...

机器学习day2-特征工程
四.特征工程 1.概念 一般使用pandas来进行数据清洗和数据处理、使用sklearn来进行特征工程 将任意数据(文本或图像等)转换为数字特征,对特征进行相关的处理 步骤:1.特征提取;2.无量纲化(预处理…...

Python数据分析NumPy和pandas(三十五、时间序列数据基础)
时间序列数据是许多不同领域的结构化数据的重要形式,例如金融、经济、生态学、神经科学和物理学。在许多时间点重复记录的任何内容都会形成一个时间序列。许多时间序列是固定频率的,也就是说,数据点根据某些规则定期出现,例如每 1…...
Python 小高考篇(6)常见错误及排查
目录 TypeError拼接字符串和数字错误示范正确示范 数字、字符串当成函数错误示范 给函数传入未被定义过的参数错误示范 传入的参数个数不正确错误示范 字符串相乘错误示范正确示范 量取整数的长度错误示范正确示范 格式化字符串时占位符个数不正确错误示范 给复数比较大小错误示…...

Linux 文件类型,目录与路径,文件与目录管理
文件类型 后面的字符表示文件类型标志 普通文件:-(纯文本文件,二进制文件,数据格式文件) 如文本文件、图片、程序文件等。 目录文件:d(directory) 用来存放其他文件或子目录。 设备…...

【入坑系列】TiDB 强制索引在不同库下不生效问题
文章目录 背景SQL 优化情况线上SQL运行情况分析怀疑1:执行计划绑定问题?尝试:SHOW WARNINGS 查看警告探索 TiDB 的 USE_INDEX 写法Hint 不生效问题排查解决参考背景 项目中使用 TiDB 数据库,并对 SQL 进行优化了,添加了强制索引。 UAT 环境已经生效,但 PROD 环境强制索…...
五年级数学知识边界总结思考-下册
目录 一、背景二、过程1.观察物体小学五年级下册“观察物体”知识点详解:由来、作用与意义**一、知识点核心内容****二、知识点的由来:从生活实践到数学抽象****三、知识的作用:解决实际问题的工具****四、学习的意义:培养核心素养…...
【AI学习】三、AI算法中的向量
在人工智能(AI)算法中,向量(Vector)是一种将现实世界中的数据(如图像、文本、音频等)转化为计算机可处理的数值型特征表示的工具。它是连接人类认知(如语义、视觉特征)与…...

从零实现STL哈希容器:unordered_map/unordered_set封装详解
本篇文章是对C学习的STL哈希容器自主实现部分的学习分享 希望也能为你带来些帮助~ 那咱们废话不多说,直接开始吧! 一、源码结构分析 1. SGISTL30实现剖析 // hash_set核心结构 template <class Value, class HashFcn, ...> class hash_set {ty…...
鸿蒙DevEco Studio HarmonyOS 5跑酷小游戏实现指南
1. 项目概述 本跑酷小游戏基于鸿蒙HarmonyOS 5开发,使用DevEco Studio作为开发工具,采用Java语言实现,包含角色控制、障碍物生成和分数计算系统。 2. 项目结构 /src/main/java/com/example/runner/├── MainAbilitySlice.java // 主界…...

安全突围:重塑内生安全体系:齐向东在2025年BCS大会的演讲
文章目录 前言第一部分:体系力量是突围之钥第一重困境是体系思想落地不畅。第二重困境是大小体系融合瓶颈。第三重困境是“小体系”运营梗阻。 第二部分:体系矛盾是突围之障一是数据孤岛的障碍。二是投入不足的障碍。三是新旧兼容难的障碍。 第三部分&am…...

深度学习水论文:mamba+图像增强
🧀当前视觉领域对高效长序列建模需求激增,对Mamba图像增强这方向的研究自然也逐渐火热。原因在于其高效长程建模,以及动态计算优势,在图像质量提升和细节恢复方面有难以替代的作用。 🧀因此短时间内,就有不…...

给网站添加live2d看板娘
给网站添加live2d看板娘 参考文献: stevenjoezhang/live2d-widget: 把萌萌哒的看板娘抱回家 (ノ≧∇≦)ノ | Live2D widget for web platformEikanya/Live2d-model: Live2d model collectionzenghongtu/live2d-model-assets 前言 网站环境如下,文章也主…...
6个月Python学习计划 Day 16 - 面向对象编程(OOP)基础
第三周 Day 3 🎯 今日目标 理解类(class)和对象(object)的关系学会定义类的属性、方法和构造函数(init)掌握对象的创建与使用初识封装、继承和多态的基本概念(预告) &a…...