当前位置: 首页 > news >正文

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)来实现最佳的开发效果。

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

相关文章:

JS学习日记(jQuery库)

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

Uni-APP+Vue3+鸿蒙 开发菜鸟流程

参考文档 文档中心 运行和发行 | uni-app官网 AppGallery Connect DCloud开发者中心 环境要求 Vue3jdk 17 Java Downloads | Oracle 中国 【鸿蒙开发工具内置jdk17&#xff0c;本地不使用17会报jdk版本不一致问题】 开发工具 HBuilderDevEco Studio【目前只下载这一个就…...

Linux的基本用法

Linux的基本用法涵盖多个方面&#xff0c;包括用户登录、系统操作、文件和目录管理、系统工具使用等。以下是对Linux基本用法的详细介绍&#xff1a; 一、用户登录与系统操作 用户登录 普通用户登录&#xff1a;选择用户名并输入密码。超级用户&#xff08;root&#xff09;登…...

如何找出爬取网站的来源IP呢?

1.背景 最近网站数据库性能很不稳定&#xff0c;查询性能在某段时间很慢&#xff0c;服务器CPU也很高&#xff0c;平常时间很低&#xff0c;感觉被爬虫恶意搞了&#xff0c;因此我分析了一下最近的nginx访问日志 2.方法 找出访问量最大20个ip [root100 nginx]# cat liuhaih…...

Java爬虫(Jsoup)详解

文章目录 Java爬虫&#xff08;Jsoup&#xff09;详解一、引言二、Jsoup 快速入门1、Jsoup 简介1.1、添加依赖 2、解析 HTML 文档2.1、解析 HTML 字符串2.2、从 URL 加载 Document2.3、解析 body 片断 三、数据抽取1、使用 DOM 方法遍历文档3.1、获取元素 2、使用选择器语法查找…...

力扣周赛:第424场周赛

&#x1f468;‍&#x1f393;作者简介&#xff1a;爱好技术和算法的研究生 &#x1f30c;上期文章&#xff1a;力扣周赛&#xff1a;第422场周赛 &#x1f4da;订阅专栏&#xff1a;力扣周赛 希望文章对你们有所帮助 第一道题模拟题&#xff0c;第二道题经典拆分数组/线段树都…...

预处理(1)(手绘)

大家好&#xff0c;今天给大家分享一下编译器预处理阶段&#xff0c;那么我们来看看。 上面是一些预处理阶段的知识&#xff0c;那么明天给大家讲讲宏吧。 今天分享就到这里&#xff0c;谢谢大家&#xff01;&#xff01;...

利用OpenAI进行测试需求分析——从电商网站需求到测试用例的生成

在软件测试工程师的日常工作中&#xff0c;需求分析是测试工作中的关键步骤。需求文档决定了测试覆盖的范围和测试策略&#xff0c;而测试用例的编写往往依赖于需求的准确理解。传统手工分析需求耗时长&#xff0c;尤其在面对大量需求和复杂逻辑时容易遗漏细节。本文将以电商网…...

深入探索:Scrapy深度爬取策略与实践

标题&#xff1a;深入探索&#xff1a;Scrapy深度爬取策略与实践 引言 在数据驱动的时代&#xff0c;深度爬取成为了获取丰富信息的重要手段。Scrapy&#xff0c;作为一个强大的Python爬虫框架&#xff0c;提供了多种工具和设置来帮助我们实现深度爬取。本文将详细介绍如何在…...

《生成式 AI》课程 第3講:訓練不了人工智慧嗎?你可以訓練你自己

资料来自李宏毅老师《生成式 AI》课程&#xff0c;如有侵权请通知下线 Introduction to Generative AI 2024 Spring 摘要 这一系列的作业是为 2024 年春季的《生成式 AI》课程设计的&#xff0c;共包含十个作业。每个作业都对应一个具体的主题&#xff0c;例如真假难辨的世界…...

如何编译 Cesium 源码

如何编译 Cesium 源码 Cesium 是一个开源的 JavaScript 库&#xff0c;用于构建 3D 地球和地图应用程序。它提供了一套强大的 API 和工具&#xff0c;使开发者能够创建丰富的地理空间应用。本文将指导您如何从 GitHub 下载 Cesium 源码&#xff0c;并在本地进行编译。 TilesB…...

前端开发设计模式——责任链模式

目录 一、定义和特点 1. 定义 2. 特点 二、实现方式 定义抽象处理者&#xff08;Handler&#xff09;类 创建具体处理者&#xff08;ConcreteHandler&#xff09;类 构建责任链 以下是一个用 JavaScript 实现的示例&#xff1a; 三、应用场景 1. 表单验证 2. 请求处…...

JavaWeb--MySQL

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

Python | Leetcode Python题解之第564题数组嵌套

题目&#xff1a; 题解&#xff1a; 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 简介 接下来一段时间&#xff0c;我会持续发布并完成Spring Boot教程 Spring 被广泛用于创建可扩展的应用程序。对于 Web 应用程序&#xff0c;Spring 提供了 Spring MVC&#xff0c;它是 Spring 的一个广泛使用的模块&#xff0c;用于创建可扩展的 Web 应用程序。…...

Qwen2-VL:发票数据提取、视频聊天和使用 PDF 的多模态 RAG 的实践指南

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

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

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

机器学习day2-特征工程

四.特征工程 1.概念 一般使用pandas来进行数据清洗和数据处理、使用sklearn来进行特征工程 将任意数据&#xff08;文本或图像等&#xff09;转换为数字特征&#xff0c;对特征进行相关的处理 步骤&#xff1a;1.特征提取&#xff1b;2.无量纲化&#xff08;预处理&#xf…...

Python数据分析NumPy和pandas(三十五、时间序列数据基础)

时间序列数据是许多不同领域的结构化数据的重要形式&#xff0c;例如金融、经济、生态学、神经科学和物理学。在许多时间点重复记录的任何内容都会形成一个时间序列。许多时间序列是固定频率的&#xff0c;也就是说&#xff0c;数据点根据某些规则定期出现&#xff0c;例如每 1…...

Python 小高考篇(6)常见错误及排查

目录 TypeError拼接字符串和数字错误示范正确示范 数字、字符串当成函数错误示范 给函数传入未被定义过的参数错误示范 传入的参数个数不正确错误示范 字符串相乘错误示范正确示范 量取整数的长度错误示范正确示范 格式化字符串时占位符个数不正确错误示范 给复数比较大小错误示…...

Element-UI Loading动画实战:如何优雅处理路由跳转与请求拦截(附自定义图标技巧)

Element-UI Loading动画深度优化&#xff1a;从路由拦截到视觉定制的完整方案 在Vue技术栈项目中&#xff0c;Element-UI的Loading服务是提升用户体验的关键组件之一。当页面需要等待数据加载或路由跳转时&#xff0c;一个流畅的加载动画能有效缓解用户的焦虑情绪。本文将深入探…...

从收音机到Wi-Fi:手把手复现经典小信号调谐放大器实验(附Multisim仿真文件)

从矿石收音机到5G射频前端&#xff1a;调谐放大器技术演进与Multisim仿真实践 上世纪二十年代&#xff0c;当业余无线电爱好者们用矿石和线圈组装出最简单的接收装置时&#xff0c;他们可能不会想到&#xff0c;这种基于LC谐振原理的选频技术会延续百年&#xff0c;成为现代无线…...

GluonCV版本升级指南:从0.8到0.11的10大新特性详解

GluonCV版本升级指南&#xff1a;从0.8到0.11的10大新特性详解 【免费下载链接】gluon-cv dmlc/gluon-cv: GluonCV 是由DMLC&#xff08;Apache MXNet背后的社区&#xff09;开发的一个计算机视觉库&#xff0c;为研究人员和工程师提供了大量预训练模型、基准测试和工具&#x…...

公开信息整理|2026年3月26日:科学进展、词元活动、食品安全、护理保险与部分国际动态速览

&#x1f525;个人主页&#xff1a;杨利杰YJlio❄️个人专栏&#xff1a;《Sysinternals实战教程》《Windows PowerShell 实战》《WINDOWS教程》《IOS教程》《微信助手》《锤子助手》 《Python》 《Kali Linux》 《那些年未解决的Windows疑难杂症》&#x1f31f; 让复杂的事情更…...

ChatTTS 入门指南:从零开始构建你的第一个语音对话应用

最近在做一个需要语音交互的小项目&#xff0c;选型时发现了 ChatTTS 这个工具&#xff0c;感觉挺有意思的。它不像一些大厂的 TTS 服务那么“重”&#xff0c;更像是一个专为对话场景优化的语音合成工具。如果你是第一次接触&#xff0c;可能会觉得有点无从下手&#xff0c;比…...

vue-sonner:轻量级Vue通知组件的高效集成方案

vue-sonner&#xff1a;轻量级Vue通知组件的高效集成方案 【免费下载链接】vue-sonner &#x1f514; An opinionated toast component for Vue. 项目地址: https://gitcode.com/gh_mirrors/vu/vue-sonner 项目概述 vue-sonner是一个为Vue和Nuxt应用设计的轻量级通知组…...

KV260实战:从PYNQ安装到跑通第一个AI例程,手把手带你玩转边缘AI开发板

KV260边缘AI开发实战&#xff1a;从PYNQ部署到图像分类全流程指南 当你第一次拿到KV260开发板时&#xff0c;可能会被它小巧的外表所迷惑——这块巴掌大的开发板实际上搭载了赛灵思的Kria K26 SOM系统模块&#xff0c;内含可编程逻辑和四核ARM Cortex-A53处理器&#xff0c;专为…...

告别手动切割:Pixelorama智能精灵图处理方案

告别手动切割&#xff1a;Pixelorama智能精灵图处理方案 【免费下载链接】Pixelorama A free & open-source 2D sprite editor, made with the Godot Engine! Available on Windows, Linux, macOS and the Web! 项目地址: https://gitcode.com/gh_mirrors/pi/Pixelorama …...

解向量前33位是DG位置,后33位是无功补偿容量

3.基于遗传算法的配电网优化配置 主要内容&#xff1a;分布式电源、无功补偿装置接入配电网&#xff0c;考虑配电网经济性和电能质量为目标函数&#xff0c;使用遗传算法进行优化配置&#xff0c;在IEEE33节点&#xff0c;118节点系统进行了仿真验证。 文件夹内运行main函数。配…...

嵌入式无锁环形缓冲区:SPSC零依赖实现

1. 项目概述nl_ring_buffer是一个极简、零依赖、可移植的环形缓冲区&#xff08;Circular Buffer&#xff09;实现&#xff0c;专为嵌入式系统底层开发设计。其核心目标并非提供功能堆砌&#xff0c;而是以最小代码体积、确定性执行时间、无动态内存分配、无锁&#xff08;lock…...