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

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

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

支持用户注册和登录、发布动态、点赞、评论、私信等功能的社交媒体平台创建!!!

需要整体源代码的可以在我的代码仓下载https://gitcode.com/speaking_me/social-media-platformTest.git 社交媒体平台 描述&#xff1a;社交媒体平台需要支持用户注册、发布动态、点赞、评论、私信等功能。 技术栈&#xff1a; 前端&#xff1a;React, Angular, Vue.js后端…

数字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…

【时间之外】IT人求职和创业应知【37】-AIGC私有化

目录 新闻一&#xff1a;2024智媒体50人成都会议暨每经20周年财经媒体峰会召开 新闻二&#xff1a;全球机器学习技术大会在北京召开 新闻三&#xff1a;区块链技术在金融领域的应用取得新突破 不知不觉的坚持了1个月&#xff0c;按照心理学概念&#xff0c;还要坚持2个月&am…

基于单片机智能温室大棚监测系统

本设计以单片机为核心的智能温室大棚监测系统&#xff0c;用于监测大棚内的温湿度、土壤湿度、CO2浓度和光照强度。该系统以STM32F103C8T6芯片为核心控制单元&#xff0c;涵盖电源、按键、NB-IoT模块、显示屏模块、空气温湿度检测、土壤湿度检测、二氧化碳检测和光敏电阻等模块…

JavaScript逆向爬虫教程-------基础篇之常用的编码与加密介绍(python和js实现)

目录 一、编码与加密原理 1.1 ASCII 编码1.2 详解 Base64 1.2.1 Base64 的编码过程和计算方法1.2.2 基于编码的反爬虫设计1.2.3 Python自带base64模块实现base64编码解码类封装 1.3 MD5消息摘要算法 1.3.1 MD5 介绍1.3.2 Python实现md5以及其他常用消息摘要算法封装 1.4 对称加…

RHCSA学习超详细知识点2命令篇

输入命令行的语法 终端中执行命令需要遵照一定的语法&#xff0c;输入命令的格式如下&#xff1a; 命令 参数命令 -选项 参数 输入命令时可以包含多个选项&#xff0c;假如一个命令有-a,-b,-c,-d四个选项&#xff0c;可以写作 命令 -a -b -c -d 参数 这里的多个选项可以“提…

Java结合ElasticSearch根据查询关键字,高亮显示全文数据。

由于es高亮显示机制的问题。当全文内容过多&#xff0c;且搜索中标又少时&#xff0c;就会出现高亮结果无法覆盖全文。因此需要根据需求手动替换。 1.根据es的ik分词器获取搜索词的分词结果。 es部分&#xff1a; //中文分词解析 post /_analyze {"analyzer":"…

5. langgraph中的react agent使用 (从零构建一个react agent)

1. 定义 Agent 状态 首先&#xff0c;我们需要定义 Agent 的状态&#xff0c;这包括 Agent 所持有的消息。 from typing import (Annotated,Sequence,TypedDict, ) from langchain_core.messages import BaseMessage from langgraph.graph.message import add_messagesclass …

STL序列式容器之list

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

Science Robotics 封面论文:视触觉传感器的手内操作

现在&#xff0c;随便丢给机械手一个陌生物体&#xff0c;它都可以像人类一样轻松拿捏了。除了苹果&#xff0c;罐头、乐高积木、大象玩偶、骰子&#xff0c;都不在话下&#xff1a; 这就是来自Meta FAIR团队最新的NeuralFeels技术&#xff0c;通过融合触觉和视觉&#xff0c;机…

定时器简介

TIM(Timer定时器)简介 在第一部分,我们主要讲的是定时器基本定时的功能&#xff0c;也就是定一个时间&#xff0c;然后让定时器每隔这个时间产生一个中断&#xff0c;来实现每隔一个固定时间执行一段程序的目的&#xff0c;比如你要做个时钟、秒表&#xff0c;或者使用一些程序…

【电子设计】按键LED控制与FreeRTOS

1. 安装Keilv5 打开野火资料,寻找软件包 解压后得到的信息 百度网盘 请输入提取码 提取码:gfpp 安装526或者533版本都可以 下载需要的 F1、F4、F7、H7 名字的 DFP pack 芯片包 安装完 keil 后直接双击安装 注册操作,解压注册文件夹后根据里面的图示步骤操作 打开说明 STM…

阅读2020-2023年《国外军用无人机装备技术发展综述》笔记_技术趋势

目录 文献基本信息 序言 1 发展概况 2 重点技术发展 2.1 人工智能技术 2.1.1 应用深化 2.1.2 作战效能提升 2.2 航空技术 2.2.1螺旋桨设计创新 2.2.2 发射回收技术进步 2.3 其他相关技术 2.3.1 远程控制技术探 2.3.2 云地控制平台应用 3 装备系统进展 3.1 无人作…

redis类型介绍

1. 字符串&#xff08;String&#xff09;&#xff1a; • 简介&#xff1a;最基础的数据类型&#xff0c;可以存储任何形式的字符串&#xff0c;包括文本数据和数字数据。 • 常用操作&#xff1a;SET、GET、INCR、DECR等。 2. 列表&#xff08;List&#xff09;&#xff1a; …

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

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

家政服务小程序,家政行业数字化发展下的优势

今年以来&#xff0c;家政市场需求持续增长&#xff0c;市场规模达到了万亿级别&#xff0c;家政服务行业成为了热门行业之一&#xff01; 家政服务种类目前逐渐呈现了多样化&#xff0c;月嫂、保姆、做饭保洁、收纳、维修等家政种类不断出现&#xff0c;满足了居民日益增长的…

炼码LintCode--数据库题库(级别:简单;数量:55道)--刷题笔记_02

目录 炼码LintCode--数据库题库&#xff08;级别&#xff1a;简单&#xff1b;数量&#xff1a;55道&#xff09;--刷题笔记_023618 耗时前三的任务&#xff08;日期差&#xff09;题&#xff1a;sql&#xff1a;解释&#xff1a;DATEDIFF 天数差order by 别名TIMESTAMPDIFF 月…

如何使用正则表达式验证域名

下面是一篇关于如何使用正则表达式验证域名的教程。 如何使用正则表达式验证域名 简介 域名是互联网上网站的地址&#xff0c;每个域名由多个标签&#xff08;label&#xff09;组成&#xff0c;标签之间用点 . 分隔。域名规则有很多细节&#xff0c;但基本要求是&#xff1a…

猫狗识别之BUG汇总

一、github登不上去问题 下载watt toolkit 下载地址&#xff1a;https://steampp.net/ 可以下载后加速&#xff0c;访问github 二、猫狗总体参考核心 B哥的博客 https://github.com/bubbliiiing/classification-keras?tabreadme-ov-file 三、CSDN很多会员才能阅读问题 根据…

MATLAB 使用教程 —— 命令窗口输入命令,工作区显示变量

命令在命令窗口输入变量在工作区显示 MATLAB 桌面包含的面板如下&#xff1a; 当前文件夹 - 此面板允许访问项目文件夹和文件。命令窗口 - 这是主要区域&#xff0c;用户在命令行中输入命令&#xff0c;命令提示符(>>).工作区 - 工作区显示所有变量&#xff0c;无论是创…