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

详细介绍:jQuery 操作指南:从 DOM 操作到 AJAX

详细介绍:jQuery 操作指南:从 DOM 操作到 AJAX

尽管现代 JavaScript 框架层出不穷,jQuery 仍然是 Web 开发中一个强大且极其有用的工具。它简洁的语法和出色的跨浏览器兼容性,使其成为快速为网页添加动态功能的绝佳选择。本指南将引导您全面了解 jQuery 的核心操作,从创建和操纵元素,到处理事件和执行异步 API 调用。

让我们开始吧!

准备工作

在开始之前,请确保您已经在 HTML 文件中引入了 jQuery 库。您可以下载它,或直接链接到 CDN:

jQuery 指南
/* 示例的基本样式 */
body { font-family: sans-serif; padding: 20px; }
.container, .box { border: 1px solid #ccc; padding: 15px; margin-top: 10px; }
.highlight { background-color: #fffbe6; }
jQuery 示例
我是原始内容!
// 你的 jQuery 代码将写在这里

1. 创建和添加元素

动态添加内容是交互式网页的基石。jQuery 使这个过程变得异常简单。

第一步:在内存中创建元素

要创建一个新元素,只需将其 HTML 结构包裹在 $() 函数中。这将创建一个尚未附加到页面的 jQuery 对象。

// 创建一个新的  元素
var newHeader = $("我是一个全新的标题!");

第二步:将元素添加到 DOM

jQuery 提供了多种直观的方法,可以精确地将新元素放置到您想要的位置。

在元素内部添加
  • prepend(): 在所选元素的开头插入内容。

  • append(): 在所选元素的末尾插入内容。

// 获取容器元素
var container = $("#manipulate-container");
// 在容器内部添加元素
container.prepend("-- Prepend: 我在最前面! --");
container.append("-- Append: 我在最后面! --");
在元素外部添加(作为兄弟节点)
  • before(): 在所选元素之前插入内容。

  • after(): 在所选元素之后插入内容。

// 在容器外部添加元素
container.before("-- Before: 我在容器上方。 --");
container.after("-- After: 我在容器下方。 --");

此外,还有像 appendTo()prependTo() 这样的反向方法,在链式调用中非常有用:

$("我被一次性创建并添加了!").appendTo(container);

2. 删除和清空元素

与添加元素同样重要的是,要学会如何干净地移除它们。

  • remove(): 将所选元素及其所有子元素从 DOM 中完全移除

  • empty(): 移除所选元素的所有子元素,但保留该元素本身

让我们用下面的 HTML 来演示:

你可以将我完全移除。
你可以清空我的父元素。
我也会被一并移除。
$("#remove-btn").on("click", function() {
$(".removable").remove();
});
$("#empty-btn").on("click", function() {
$(".clearable").empty();
});

3. 遍历和查找元素

jQuery 在导航 DOM 树方面表现出色。一旦选中一个元素,您就可以轻松地找到相关的其他元素。

让我们使用以下 HTML 结构进行遍历示例:

项目 1
项目 2
子项目 2.1
项目 3
项目 4
使用 .each() 迭代

要对一组元素集合执行操作,.each() 是您的首选方法。

$("ul.nav-list > li").each(function(index, element) {
// 'index' 是索引号 (0, 1, 2...)
// 'element' 是原生的 DOM 元素
// 重要:要使用 jQuery 方法,必须先将原生元素包装起来
var jqElement = $(element);
console.log(`索引 ${index}: 文本是 "${jqElement.text().trim()}"`);
});

重点提示: 最常见的错误是试图在原生 element 上调用 jQuery 方法(如 .text())。请始终记得先用 $(element) 将其包装起来!

DOM 遍历方法
类别方法描述
向下查找.find(selector), .children(selector)查找后代元素(任何层级)或直接子元素(仅下一级)。
向上查找.parent(), .parents(selector)查找直接父元素或所有祖先元素。
同级查找.siblings(), .next(), .prev()查找所有兄弟节点,或紧邻的上一个/下一个兄弟节点。
筛选.first(), .last(), .eq(index)筛选集合,获取第一个、最后一个或指定索引的元素。
var activeItem = $(".nav-list .active");
// 在活动项中查找嵌套的 ul
var sublist = activeItem.find("ul");
console.log("找到子列表:", sublist.length > 0); // true
// 获取活动项的所有兄弟节点
var siblings = activeItem.siblings();
siblings.css("border", "1px dotted blue"); // 高亮显示 项目 1, 3, 4
// 获取活动项的直接父元素
var parentList = activeItem.parent();
parentList.css("background-color", "#f0f0f0");

4. 精通事件处理

jQuery 简化了事件处理,屏蔽了浏览器的不一致性。处理事件最现代、最通用的方法是 .on()

基本的点击事件
点我!
$("#main-btn").on("click", function() {
alert("按钮被点击了!");
});
绑定多个事件

您可以通过多种方式绑定多个事件。

1. 多个事件,同一个处理函数(使用空格分隔的字符串)

$("#main-btn").on("mouseenter mouseleave", function() {
// 这个函数在鼠标悬停进入和离开时都会运行
$(this).toggleClass("highlight");
});

2. 多个事件,不同的处理函数(推荐)(使用对象映射)

这是在单个元素上管理多个事件的最清晰的方式。

$("#main-btn").on({
click: function() {
console.log("被点击了!");
},
mouseenter: function() {
$(this).css("background-color", "lightblue");
},
mouseleave: function() {
$(this).css("background-color", ""); // 恢复默认样式
}
});

5. 在页面加载完成后运行代码

一个至关重要的概念是,要确保您的代码在 DOM 完全加载之前不会运行。如果脚本试图查找一个尚未渲染的元素,它将会失败。jQuery 的 ready 事件完美地解决了这个问题。

标准语法:

$(document).ready(function() {
// 所有与 DOM 交互的 jQuery 代码都应该放在这里。
console.log("DOM 已完全加载,可以开始操作了!");
});

简写语法(通用):

$(function() {
// 这是 ready 事件的首选、简洁写法。
console.log("DOM 已就绪!");
// 把你的所有代码都放在这里。
});

最佳实践: 始终将您的 jQuery 代码包裹在 $(function() { ... }); 块中以防止出错。并将您的 <script> 标签放在 </body> 标签之前,以获得最佳的页面加载性能。


6. 理解鼠标事件与事件冒泡

jQuery 提供了两对功能相似的鼠标进入/离开事件。它们的主要区别在于事件冒泡(Event Bubbling)

  • mouseenter / mouseleave: 不冒泡。它们仅在光标进入或离开绑定的元素本身时触发,会忽略其子元素。

  • mouseover / mouseout: 会冒泡。当光标进入/离开绑定的元素或其任何子元素时,它们都会触发。

让我们通过一个实例看看它们的区别:

父元素
子元素
// 使用 mouseenter/mouseleave (不冒泡)
$("#parent-box").on("mouseenter", function() {
console.log("--- 鼠标进入了父元素 ---"); // 只在进入父元素时触发一次
});
// 使用 mouseover/mouseout (有冒泡)
$("#parent-box").on("mouseover", function() {
console.log("鼠标在父元素内的某个元素上"); // 进入父元素时触发,进入子元素时再次触发
});

当您测试这段代码时,会发现 mouseenter 只触发一次,而当光标移入子元素时,mouseover 会触发两次。请根据您的具体需求选择合适的事件!


7. 使用 AJAX 让页面焕发活力

AJAX(异步JavaScript和XML)技术允许您在不重新加载整个页面的情况下,与服务器交换数据并更新部分网页内容。jQuery 的 $.ajax() 方法使这一切变得异常简单。

通过 AJAX 加载数据

$.ajax() 方法接收一个配置对象作为参数。其中最重要的属性是:

  • url: 您要请求的服务器地址。

  • type: HTTP 请求方法(如 "GET", "POST" 等)。

  • data: 要发送到服务器的数据(用于 POST 请求)。

  • success: 请求成功后执行的回调函数。它会接收服务器返回的数据作为参数。

  • error: 请求失败时执行的回调函数。

$(function() {
$("#load-data-btn").on("click", function() {
$.ajax({
url: "https://jsonplaceholder.typicode.com/posts/1", // 一个用于测试的免费公共 API
type: "GET",
// 当数据成功接收时,这个函数将会运行
success: function(response) {
console.log("请求成功!", response);
var content = `${response.title}${response.body}`;
$("#ajax-result").html(content);
},
// 如果请求失败,这个函数将会运行
error: function(xhr, status, error) {
console.error("AJAX 错误:", status, error);
$("#ajax-result").html("抱歉,无法加载数据。");
}
});
});
});

相关文章:

详细介绍:jQuery 操作指南:从 DOM 操作到 AJAX

详细介绍:jQuery 操作指南:从 DOM 操作到 AJAXpre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monaco", "Courier New", monospace …...

一个 Blazor/WinForm 开发者的 WPF 学习记:通往 Avalonia 的那条路

一个 Blazor/WinForm 开发者的 WPF 学习记:通往 Avalonia 的那条路 写在前面 做了几年 Blazor 和 WinForm,本来以为桌面端这件事就这么过去了。直到我认真考虑跨平台桌面方案,才发现绕不开 Avalonia。而要真正用好 Avalonia,最好先补 WPF 这一课。这篇文章不是教程,更多是…...

VulkanAPI细节梳理2

// --- 创建渲染通行证(支持多视图和深度缓冲) ---std::vector<VkAttachmentDescription> attachments(2);// 颜色附件attachments[0].format = format;attachments[0].samples = VK_SAMPLE_COUNT_1_BIT;attachments[0].loadOp = VK_ATTACHMENT_LOAD_OP_CLEAR;attachme…...

React 状态丢失:组件 key 用错引发的渲染异常 - 指南

React 状态丢失:组件 key 用错引发的渲染异常 - 指南pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monaco", "Courier New", monos…...

快速实现 Excel 表格转 SVG:Java 教程 - E

如果你曾尝试过把 Excel 表格导出为 SVG 图片,就会发现 Excel 本身并不支持这种格式。虽然市面上存在一些在线转换工具,但上传文件存在效率与安全方面的顾虑。对于开发者来说,使用 Java 来实现 Excel 到 SVG 的转换,是一种更灵活、可控的方式。本文将演示如何通过简单的 Ja…...

绕过文件上传限制实现客户端路径遍历漏洞利用的技术解析

本文详细解析了如何通过精心构造JSON文件绕过PDF和图像上传验证机制,利用mmmagic、pdflib和file命令的检测特性实现客户端路径遍历攻击的技术方法与实战案例。绕过文件上传限制实现客户端路径遍历漏洞利用 在我之前的博客文章中,我演示了如何利用JSON文件作为客户端路径遍历(…...

事件总线之初步学习

第一步:创建一个eventBus.js 文件名可根据个人爱好取名即可; 内容:import Vue from vue const eventBus = new Vue(); export default eventBus;第二步:使用import EventBus from @/common/eventBus;//监听全局事件clear-login-interval EventBus.$on(clear-login-interva…...

Markdown Day04

常用DOS命令 ##查看当前目录下所有文件dir ##切换目录cd change directory ##cd..回到上一个 ##清理屏幕cls ##退出exit ##查看电脑IP,ipconfig ##打开应用 calc notepad mspaint ##ping 命令 ping www.baidu.com ##文件操作 ad 创建目录 cd> 新增文件 del 删除文件 rd 移…...

C++中类的内存存储

目录类类对象的非虚成员函数类的成员变量空类对象具有虚函数的类对象 类 类本身不会存储在内存中,类实例化的对象才会保存在内存中。但是使用 sizeof 计算类大小时能得到结果,这是因为 sizeof 会在编译时就得到类型信息,这只与类的布局有关。 类对象的非虚成员函数 考虑如下…...

PyTorch 优化器(Optimizer)

优化器(Optimizer)是深度学习训练过程中用于更新模型参数的核心组件。在训练神经网络时,我们需要通过反向传播计算损失函数相对于模型参数的梯度,然后使用优化器根据这些梯度来更新参数,以最小化损失函数。PyTorch 优化器(Optimizer)技术指南 目录优化器概念 常用优化器…...

实用指南:域名市场中,如何确认域名的价值

实用指南:域名市场中,如何确认域名的价值pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monaco", "Courier New", monospace !impo…...

初步了解Neo4j

1. 是什么? Neo4j 是一个原生图数据库。它与我们熟悉的关系型数据库(如 MySQL, PostgreSQL)和 NoSQL 数据库(如 MongoDB)有根本性的不同,因为它专门为存储和查询数据之间的关系而设计。 它的核心哲学是:“关系即一等公民”。这意味着关系(或连接)和数据本身同等重要,…...

多模态和语音 AI 年度收官大会,把握 2026 技术风向标!

如果今年只参加一场多模态和语音 AI 大会,来 Convo AI & RTE2025 就够了。你是否好奇:1⃣从端到端语音模型和全双工技术,未来音频还将有哪些突破方向?2⃣如何挖掘端侧 AI 潜能,定义下一代智能硬件终端?3⃣从主动智能体到可交互世界模型,实时多模态 AI 将驱动怎样的未…...

做题

P4159 [SCOI2009] 迷路 矩阵快速幂优化递推。 首先最暴力的想法,设 $ f_{i,j} $ 在 $ j $ 时刻,到达点 $ i $ 的种类数。 枚举时间和 $ i $,然后 $ f_{i,j} = \sum\limits_{k=1}^n {f_{k,j-w[i][k]}} $。 时间很大,所以肯定行不通。 这样显然是不能用矩阵来优化的。 考虑拆…...

解码C语言函数

一、函数基本概念 1.1 函数定义 概念:把一个功能的实现流程封装起来,使用户留下接口进行调用 作用:参数创建该功能进行封装操作,返回值即通过功能显示的产出 1.2 函数组成要素返回值类型:根据函数功能而定,需要在函数头中指定子程序类的返回值类型 参数名:在函数体中提取…...

SchemaStore

Hello World本文来自博客园,作者:南宫影,转载请注明原文链接:https://www.cnblogs.com/nangongying/p/19100468...

XSS攻击防御

目录背景和价值为什么需要输出编码?不同场景下的编码方式(白话版)1. 最常见场景:内容显示在HTML标签里(比如<div>、<span>中)2. 特殊场景:内容显示在HTML标签的属性里(比如value、href中)3. 特殊场景:内容要在JavaScript代码里使用4. 特殊场景:内容作为…...

imes开发部署

一.git地址下载源码 二.后端设置 1.增加配置文件:ktg-admin/src/main/resources/application-test.yml2.临时修改代码:ktg-mes/src/main/java/com/ktg/mes/task/MesTask.java,如图注释2行。 3.快捷键Ctrl+Alt+Shift+S,打开项目结构(Project Structure)对话框4.编辑配置5…...

思维题做题记录-1

CF2600左右有趣的思维题做题记录-1 CF1458C. Latin Square 考虑将原矩阵写成 \(n\times n\) 个限制形如 \((i,j,a_{i,j})\),那么所有操作就是对这些限制进行的修改:对于 UD 操作相当于将限制改为 \((i\mp 1,j,a_{i,j})\)。 对于 LR 操作相当于将限制改为 \((i,j\mp 1,a_{i,j}…...

如何在极短时间内通透一个大型开源项目

如何在极短时间内通透一个大型开源项目前言 在现代软件开发中,快速理解和掌握大型开源项目是一项至关重要的技能。无论是参与开源贡献、技术选型,还是学习先进架构模式,都需要我们具备高效解读项目的能力。本文将以 OpenDeepWiki 项目为例,深入剖析如何运用AI技术快速通透一…...

求 Ray Ping - Gon

rt(跟风...

LCT学习笔记

LCT学习笔记从例题开始: P3690 【模板】动态树(LCT) 对于一棵静态的树,常见方法是树剖然后走链,但是在动态的情况下常见的重链或长链就会很慢,因为修改连边情况后就不满足性质了 引入一个新的方法:实链剖分,对于一个节点,任选一个儿子,连边为实边,其余为虚边,注意这…...

Visual Studio 2026 Insiders 重磅发布:AI 深度集成、性能飞跃、全新设计

近日,微软正式发布 Visual Studio 2026 Insiders!这是迄今为止 Visual StudioE 极具跨越式的一次升级。新版本不仅将 AI 深度融入开发工作流,还带来了企业级性能的显著提升,以及更轻盈、现代的界面设计,全面提升开发体验。近日,微软正式发布 Visual Studio 2026 Insiders…...

《刚刚问世》系列初窥篇-Java+Playwright自动化测试-29- 操作单选和多选按钮 - 下篇(详细教程) - 北京

1.简介 我们可能会遇到一直测试单选和复选按钮的测试场景,如果就十几道选择题,那就手工点击,马上完事,但是如果是让你测试题库呢?那不得那鼠标点击冒烟了,手指点到抽筋了。尤其是做教育类的软件测试,这些就是家常便饭了。因此今天这一篇宏哥主要是讲解一下,如何使用Pla…...

自定义注解实现服务分处理-策略模式

路由:请求标识→匹配 Service→调用 process 方法 通过自定义注解 @BusinessServiceMapping 标记具体业务 Service,注解值(如 DC 代表客户、ORD 代表订单)与请求参数中的业务标识关联;再通过 Spring 容器扫描 + 策略模式,实现 “请求标识→匹配 Service→调用 process 方…...

iOS26正式版全新风格!一文汇总实用新功能!

苹果在9月17日凌晨正式推送了iOS26系统更新,这次版本更新带来了多达61项新功能与优化。经过9个Beta版和近100天的测试,iOS26正式版终于与用户见面,版本号为23A340,更新包大小约8GB。 iOS26不仅在设计语言上焕然一新,更在AI能力、交互体验和隐私保护等多个维度进行了全面升…...

远程控制应用的中的全球节点功能如何开启?插件类型、并发数量怎么选?

不知道大家使用远程控制应用进行跨系统跨设备操作主要都是针对哪些场景呐?其实对于很多需要跨境远程办公的人群或进行售后设备升级管理的朋友来说无疑是必不可少的,甚至于海外学子们来说同样也至关重要,毕竟总有需要协助国内亲友处理问题的时刻,代操作远高于语音指导的效率…...

借助Aspose.HTML控件,使用 Python 将 HTML 转换为 DOCX

Aspose.HTML for Python via .NET提供了用于自动执行文件格式转换任务的类和方法。此外,它能够精确地转换 HTML 结构和样式,是 Python 开发人员的理想选择。本教程将向开发者展示如何在 Python 中以编程方式将HTML转换为DOCX。我们将使用一个非常快速的 Python SDK 将网页转换…...

openEuler 24.03 (LTS-SP2)安装mysql 8.0.41

环境:OS:openEuler 24.03 (LTS-SP2)(安装时候没有图形界面的选择项可选)mysql:8.0.41 glib.2.17 操作系统下载https://www.openeuler.org/en/download/#openEuler%2024.03%20LTS%20SP2查看系统glibc版本[root@localhost soft]# ldd --versionldd (GNU libc) 2.38Copyright (C) …...

7.数据库归档异常检查与处理

备库: select instance_name,status from v$instance; select open_mode from v$database; @dgstat 如果都是00:00:00则说明本地从生产到DR同步没有问题 @dgpro 与上面的RFS的sequence#进行对比,可以算出生产与DR相差的sequence Block# 1分钟前是852100,1分钟后是856100,…...

Gitlab 关键字

核心原则:一切路径始于项目根目录:https://blog.csdn.net/qq_14829643/article/details/150773286include: local:中的所有路径都是相对于当前项目的根目录进行解析的。它既不是传统意义上的“绝对路径”(如 /etc/gitlab-runner/config.toml,这会指向 Runner 服务器的文件…...

8.listener日志占用过大处理方法

ps -ef |grep tns asmenv 查询listener.log的位置路径 lsnrctl status [listener name] 例如: listener log file : /oracle/TEST/diag/tnslsnr/xianigux/listener/alert/log.xml cd /oracle/TEST/diag/tnslsnr/xianigux/listener/alert 删除除了log.xml以外的所有xml文件 rm …...

马建仓AI助手完成全链路升级:三十余项新能力重塑研发工作流

马建仓AI助手完成全链路升级:三十余项新能力重塑研发工作流 在数字化转型浪潮席卷各行各业的当下,研发效率正成为企业竞争力的关键指标。马建仓AI助手近日宣布完成面向真实研发流程的全面升级,新增三十余项智能能力,覆盖需求、开发、测试、项目管理等关键环节,标志着企业级…...

线性回归与 Softmax 回归:深度学习基础模型解析 - 实践

线性回归与 Softmax 回归:深度学习基础模型解析 - 实践pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monaco", "Courier New", mon…...

浏览器下载,一定要开启这个隐藏功能!

大家好,我是 Immerse,一名独立开发者、内容创作者。关注公众号:沉浸式趣谈,获取最新文章(更多内容只在公众号更新) 个人网站:https://yaolifeng.com 也同步更新。 转载请在文章开头注明出处和版权信息。我会在这里分享关于编程、独立开发、AI干货、开源、个人思考等内容…...

开源项目进度管理系统 PJMan:让技术项目进度可视化、数据化的利器

在软件项目管理过程中,进度不透明、任务卡点难定位、人员效率难量化是许多技术团队面临的痛点。今天为大家介绍一款开源项目进度管理系统 ——PJMan,其「项目概览」页面通过分层可视化与数据驱动的设计,将项目的 “全局趋势、任务细节、人员效率” 全方位呈现,为技术团队提…...

【光照】[漫反射]UnityURP兰伯特能量守恒吗?

【从UnityURP开始探索游戏渲染】专栏-直达兰伯特漫反射的能量守恒性 ‌能量守恒基本原理‌ 在物理正确的渲染中,能量守恒要求:表面反射的光能总量 ≤ 入射光能 漫反射+高光反射 ≤ 1.0 没有能量凭空产生或消失‌经典兰伯特模型的能量守恒问题‌ 传统兰伯特漫反射公式: $漫反…...

Microsoft AI Genius 限时挑战赛:实战开启,等你应战!

通过 Microsoft AI Genius 系列 2.0 的实战专题课程,相信各位开发者对智能 GitHub Copilot 副驾驶 Agent Mode、Azure AI Foundry Agent Service(国际版)及 Copilot Studio 的理解与掌握达到了新高度。现在,是时候将所学理论转化为实际行动,投身真实场景检验成果了。 ↓↓…...

DevSecOps革命:测试工具如何重塑企业数字化转型的质量防线

DevSecOps革命:测试工具如何重塑企业数字化转型的质量防线 在数字化转型浪潮席卷全球的当下,软件质量保障体系正经历着前所未有的范式转变。DevSecOps作为这场变革的核心方法论,正在重新定义测试工具在企业技术栈中的战略地位。从单纯的"质量守门员"到贯穿全生命周…...

3.sysaux tablesace 清理

select min(snap_id),max(snap_id) from dba_hist_snapshot; 查完后,记录min和max的值 select dbid from v$database; 18701与18953分别为min与max的snap_id的值,387090299为dbid的值,将这些值代入下面的语句执行 begin dbms_workload_repository.drop_snapshot_range( low_…...

2.LOCK session

select * from v$session_blockers; 或者 select * from gv$session_blockers; (在rac情况下) 通过 select count(1) from v$locked_object; 可以查出内容 首先询问客户能否提供lock table的session sid和serial#,如果客户只能提供session sid,则 可以使用: select sid,ser…...

2025 ~ 2026 游击 - gfoi

2025/09/19 试了试 CSP-S 的历年题目,2019 年有 84.5 分。...

【初赛】第二类斯特林数意义 - Slayer

第二类斯特林数(斯特林子集数) \(\begin{Bmatrix}n\\ k\end{Bmatrix}\),也可记做 \(S(n,k)\),表示将 \(n\) 个两两不同的元素,划分为 \(k\) 个互不区分的非空子集的方案数。 通项公式 \(\begin{Bmatrix}n\\m\end{Bmatrix}=\sum\limits_{i=0}^m\dfrac{(-1)^{m-i}i^n}{i!(m-…...

在AI技术快速实现功能的时代,挖掘新需求成为核心竞争力——某知名Android面试题库需求洞察

该篇文章无摘要a.内容描述 该项目是一个专注于Android开发领域的技术面试题库,核心功能定位为提供全面的Android面试问题与答案集合,帮助开发者准备技术面试。关键应用场景包括Android开发者求职准备、技术知识查漏补缺、面试官题库参考等。项目内容覆盖了Android开发的各个方…...

php本地搭建知识库实现rag遇到的一些问题解决方式

1、向量化的问题,中文的话,使用尽量使用国内的嵌入模型,国外的虽然支持中文,但是还是比不上国内专门针对中文的优化 本地使用ollama 搭建的话 ,我使用的是 quentinz/bge-large-zh-v1.5:latest2、不规则的pdf文件,无法使用pdf插件读取内容问题,我是php 使用 smalot/pdf…...

docker操作包括使用docker制作为接口

Docker 化 Flask OCR 应用指南 1. 创建必要的文件 在你的 Flask 应用项目根目录下,你需要创建以下文件: 1.1 Dockerfile 这是一个文本文件,包含了构建 Docker 镜像所需的所有指令1 # 使用官方 Python 3.10 (Python 3.13)精简版作为基础镜像,减小镜像体积2 FROM python:3.…...

BuildingSystemPlugin使用指南

使用自定义碰撞 1.启用Use Custom Overlay:2.修改Overlapping Box的BoxExtent来设置大小(不能设置Scale来设置大小):...

openEuler 24.03 (LTS-SP2)安装mysql5.7.42

环境:OS:openEuler 24.03 (LTS-SP2)(安装时候没有图形界面的选择项可选)mysql:5.7.42 glib.2.17 操作系统下载https://www.openeuler.org/en/download/#openEuler%2024.03%20LTS%20SP2 查看系统glibc版本[root@localhost soft]# ldd --versionldd (GNU libc) 2.38Copyright (C)…...

Trae AI IDE与Gitee MCP深度整合:开启智能协作开发新时代

Trae AI IDE与Gitee MCP深度整合:开启智能协作开发新时代 在AI技术快速渗透软件开发领域的当下,字节跳动推出的Trae AI IDE凭借其创新的智能编码能力,正在重塑开发者的工作流程。这款国产AI编程工具通过深度整合Gitee MCP(Multi-agent Collaboration Platform)服务,为开发…...

LangChain 入门:从 0 到 1 搞懂 LLM 应用开发框架​

LangChain 入门:从 0 到 1 搞懂 LLM 应用开发框架​如果你常逛技术社区,大概率听过 “大语言模型(LLM)能做很多事”—— 写文案、答问题、编代码,但真要把它放进实际业务里,比如给公司做个智能客服、给团队搭个文档问答工具,却总卡壳:要么模型记不住上下文,聊两句就 “…...