如何改变鼠标样式:用 React 与 JS 自定义 cursor 的完整实践
1. 从 CSS cursor 到 React 组件鼠标样式定制到底难在哪鼠标样式定制这件事看起来只是写一个cursor: pointer就完事了但真正落到前端项目里你会发现坑比想象中多。比如你给按钮加了cursor: pointer结果 hover 到子元素上样式突然失效再比如拖拽过程中想换成grabbing松手后忘记切回来用户鼠标一直卡在抓取状态还有自定义图片光标路径写对了但浏览器就是不显示控制台也不报错只能靠猜。先说清楚 cursor 是什么、能做什么、适合谁。CSS 的cursor属性用来定义鼠标指针悬停在元素上时的显示样式它支持关键字值如pointer、grab、text、crosshair、not-allowed等和自定义图片值url(...)加可选坐标。在 React 项目里你可以直接写在style对象里也可以抽成组件、用状态动态切换。适合所有做前端交互的开发者尤其是需要做拖拽排序、画布编辑、富文本、游戏化 UI 的场景。我试过在一个拖拽排序列表里一开始只在容器上写cursor: grab结果拖到子项上光标变回默认箭头体验很割裂。后来才明白 cursor 是继承属性但子元素如果有自己的 cursor 声明就会覆盖必须显式处理。这类问题在纯 CSS 里还能靠* { cursor: inherit }兜底但在 React 组件化之后样式作用域和状态切换让问题更隐蔽。所以这篇文章不会只给你罗列 cursor 关键字而是从 CSS 基础讲到 JS 动态切换再封装成 React 组件覆盖 hover、拖拽、图片光标三大场景最后给出可复制的配置代码和浏览器兼容性验证步骤。同时调试过程中涉及接口请求比如从后端拉取光标配置、上报样式异常我会用 TaoToken 统一管理 Key 和 API 通道避免在多个环境里来回换配置。整篇按可跟做的步骤来你照着敲就能跑起来。2. TaoToken 前置准备统一 Key 与 API 通道管理调试请求在进入 cursor 代码之前先把调试请求的通道搭好。为什么要在鼠标样式这种前端话题里提 API 管理因为真实项目里光标配置往往不是写死的——比如后台可配置主题光标、A/B 测试不同 hover 样式、或者把用户自定义光标存到服务端。这些场景都需要发请求而请求的 Key 管理、Base URL 切换、模型调用如果你用 AI 生成光标样式建议如果散落在各处排查样式不生效时就会分不清是 CSS 问题还是接口问题。TaoToken 在这里的角色是统一 Key 和 API 通道。你可以在官网 https://taotoken.net/?utm_sourcetaotoken_aicg_blog_endutm_mediumcsdnutm_campaignrewriteutm_content 了解整体能力API 入口是 https://taotoken.net/api这个地址不加 UTM。它的控制台、API Keys、模型对话、Coding Plan、接入文档都有独立 deep link后面 CTA 会按场景分流。具体到操作你需要先拿到一个 Key。进入控制台 https://taotoken.net/console?utm_sourcetaotoken_aicg_blog_endutm_contentcursor_react_guideutm_campaignrewrite 在 API Keys 页面 https://taotoken.net/api-keys?utm_sourcetaotoken_aicg_blog_endutm_contentcursor_react_guideutm_campaignrewrite 创建一个新 Key。创建时注意权限范围调试阶段给最小可用权限即可。拿到 Key 后你的请求 Base URL 统一用https://taotoken.net/api不要带 UTM 参数否则可能被当成追踪链接处理。这里要强调一个原则Base URL、Key、Model ID 三件套必须成对出现。如果你在 Cline、CC Switch 或 Codex 的auth.json里配置三件套缺一不可。比如 Codex 的auth.json里要写全base_url、api_key、model只填 Key 不填 Base URL 会直接 401。同理如果你用 Claude Code 做代码润色也要在配置里把这三项对齐否则会出现local proxy failed或OAuth相关报错。对于本篇的 cursor 调试你主要用两种请求一是拉取光标配置的 GET 请求二是用模型对话生成 CSS/JS 光标代码片段的 POST 请求。模型对话入口在 https://taotoken.net/chat?utm_sourcetaotoken_aicg_blog_endutm_contentcursor_react_guideutm_campaignrewrite 你可以直接在里面问“给我一个 React 拖拽时切换 cursor 的 hook”然后把返回代码贴进项目。接入文档在 https://taotoken.net/doc?utm_sourcetaotoken_aicg_blog_endutm_contentcursor_react_guideutm_campaignrewrite 里面有完整的请求示例和错误码说明。如果你打算长期做编码和 Agent 任务Coding Plan 在 https://taotoken.net/coding-plan?utm_sourcetaotoken_aicg_blog_endutm_contentcursor_react_guideutm_campaignrewrite 适合把多个调试请求集中管理。Claude Code 相关接入在 https://taotoken.net/claudecode-anthropic?utm_sourcetaotoken_aicg_blog_endutm_contentcursor_react_guideutm_campaignrewrite 如果你用 Claude Code 做前端代码生成可以在这里看 Anthropic 通道的配置方式。把 Key 和 Base URL 准备好之后建议先发一个最小请求验证通道是否通。比如用 curl 请求模型对话接口确认返回 200 而不是 401。这一步做完再进入 cursor 代码部分后面排查问题时就能快速区分是样式逻辑错还是请求通道错。3. 可复制配置CSS cursor 关键字、JS 动态切换与 React 组件封装这一节是核心直接给可复制的代码。先看 CSS cursor 的关键字全集再讲 JS 动态切换最后封装成 React 组件。所有代码都可以直接贴进项目跑。3.1 CSS cursor 关键字与自定义图片光标CSS cursor 支持的关键字值很多常用的有这些关键字效果典型场景default默认箭头普通区域pointer小手按钮、链接text文本光标输入框、可选中文字grab/grabbing抓取/抓取中拖拽容器/拖拽中crosshair十字画布、选区not-allowed禁止禁用按钮wait等待加载中zoom-in/zoom-out放大/缩小图片预览col-resize/row-resize列/行调整表格列宽拖拽none隐藏光标自定义光标、游戏自定义图片光标的写法是cursor: url(路径) x y, fallback;其中 x y 是热点坐标可选fallback 是图片加载失败时的关键字。注意图片格式建议用.cur或.png尺寸不要超过 32x32否则部分浏览器会忽略。/* 自定义图片光标热点在左上角失败回退到 pointer */ .custom-cursor { cursor: url(/cursors/hand.png) 4 4, pointer; } /* 拖拽容器 */ .drag-container { cursor: grab; } .drag-container:active { cursor: grabbing; }这里有个坑cursor: url(...)的路径如果是相对路径在 React 的 CSS Module 或 styled-components 里可能解析不到。建议用绝对路径或require导入。另外如果图片跨域浏览器会静默失败控制台不报错所以图片最好放同域或配置 CORS。3.2 JS 动态切换 cursor 的三种方式纯 CSS 只能处理静态和伪类状态拖拽、画布工具切换这些需要 JS 动态改。三种方式第一种直接改style.cursorconst box document.getElementById(box); box.style.cursor grabbing; // 松手后切回 box.style.cursor grab;第二种切换 classbox.classList.add(is-dragging); // CSS 里 .is-dragging { cursor: grabbing; }第三种用 CSS 变量适合主题化document.documentElement.style.setProperty(--cursor-drag, grabbing); // CSS 里 .drag { cursor: var(--cursor-drag, grab); }拖拽场景推荐用 class 切换因为状态多idle、hover、dragging、disabled用 class 更好维护。注意在dragend和mouseleave都要重置否则鼠标移出容器后光标卡在 grabbing。3.3 React 组件封装CursorProvider 与 useCursor把上面的逻辑封装成 React 组件和 hook。先写一个useCursorhookimport { useCallback, useState } from react; export function useCursor(initial default) { const [cursor, setCursor] useState(initial); const reset useCallback(() setCursor(initial), [initial]); return { cursor, setCursor, reset }; }再写一个CursorBox组件支持 hover、拖拽、自定义图片import React, { useState } from react; export function CursorBox({ children, hoverCursor pointer, dragCursor grabbing, idleCursor grab, imageCursor, draggable false, }) { const [dragging, setDragging] useState(false); const style { cursor: imageCursor ? url(${imageCursor}) 4 4, ${dragging ? dragCursor : idleCursor} : dragging ? dragCursor : idleCursor, userSelect: none, }; return ( div style{style} draggable{draggable} onMouseDown{() draggable setDragging(true)} onMouseUp{() setDragging(false)} onMouseLeave{() setDragging(false)} onDragEnd{() setDragging(false)} {children} /div ); }用法CursorBox draggable imageCursor/cursors/hand.png div拖我/div /CursorBox如果你需要全局管理光标状态可以加一个 Contextimport { createContext, useContext, useState } from react; const CursorContext createContext(null); export function CursorProvider({ children }) { const [globalCursor, setGlobalCursor] useState(default); return ( CursorContext.Provider value{{ globalCursor, setGlobalCursor }} div style{{ cursor: globalCursor }}{children}/div /CursorContext.Provider ); } export const useGlobalCursor () useContext(CursorContext);这样在画布工具切换时调setGlobalCursor(crosshair)就能全局生效。注意全局 cursor 会覆盖子元素如果子元素需要不同光标要在子元素上显式声明。3.4 与 TaoToken 请求结合的配置片段如果你要从服务端拉取光标配置可以用下面的 JSON 配置作为请求体Base URL 用https://taotoken.net/api{ model: your-model-id, messages: [ { role: user, content: 生成一个 React 拖拽时切换 cursor 的 hook要求支持 grab/grabbing 和自定义图片 } ], base_url: https://taotoken.net/api, api_key: 你的_TaoToken_Key }如果你用 Codex 的auth.json三件套要写全{ base_url: https://taotoken.net/api, api_key: 你的_TaoToken_Key, model: your-model-id }Cline 或 CC Switch 的 MCP 配置同理Base URL、Key、Model ID 一个都不能少。配置好后先发一个测试请求确认通道通再进入样式调试。4. 验证请求与成功结果浏览器兼容性检查与请求返回确认代码写完必须验证。分两步先验证 cursor 样式在浏览器里生效再验证 TaoToken 请求通道返回正常。4.1 浏览器兼容性验证步骤打开 Chrome DevTools选中目标元素在 Elements 面板的 Styles 里看cursor是否被划掉。如果被划掉说明有更高优先级的选择器覆盖了它。常见覆盖源是浏览器默认样式、第三方组件库样式、或者父元素的cursor: inherit。然后做交互验证hover 到元素上看光标是否变化按下鼠标拖拽看是否切到 grabbing松手和移出容器看是否复位。如果自定义图片光标不显示检查三点图片路径是否 404Network 面板看、图片尺寸是否超过 32x32、是否跨域。跨浏览器测试建议至少覆盖 Chrome、Firefox、Safari、Edge。Safari 对自定义图片光标支持较晚旧版本可能只支持.cur格式。可以用supports做降级.custom-cursor { cursor: pointer; } supports (cursor: url(x.png), pointer) { .custom-cursor { cursor: url(/cursors/hand.png) 4 4, pointer; } }4.2 TaoToken 请求返回确认用 curl 发一个最小请求curl -X POST https://taotoken.net/api/v1/chat/completions \ -H Content-Type: application/json \ -H Authorization: Bearer 你的_TaoToken_Key \ -d { model: your-model-id, messages: [{role: user, content: ping}] }成功返回是 200body 里有choices数组。如果返回 401说明 Key 无效或没带Authorization头如果返回local proxy failed说明 Base URL 配错或本地代理没起如果报reading choices说明返回结构不是预期的 OpenAI 格式检查 Model ID 是否正确。验证通过后你就可以在 React 项目里用这个通道拉取光标配置、生成代码片段、上报样式异常。模型对话入口在 https://taotoken.net/chat?utm_sourcetaotoken_aicg_blog_endutm_contentcursor_react_guideutm_campaignrewrite 接入文档在 https://taotoken.net/doc?utm_sourcetaotoken_aicg_blog_endutm_contentcursor_react_guideutm_campaignrewrite 遇到请求格式问题先查文档。4.3 成功结果示例一个完整的成功链路是这样的React 组件渲染出拖拽容器hover 时 cursor 变 grab按下变 grabbing松手复位同时组件挂载时向 TaoToken 发请求拉取用户自定义光标配置返回 200 后把图片路径应用到cursor: url(...)。DevTools 里能看到 cursor 样式生效Network 里能看到请求 200Console 无报错。这套流程跑通说明样式和请求两条线都正常。5. 本篇常见错排查401、local proxy failed、reading choices 与 OAuth调试过程中最容易卡在几个固定报错上逐个拆解。401 Unauthorized最常见。原因有三种——Key 没填、Key 填错、Key 没带在Authorization: Bearer头里。检查你的请求头确认Bearer后面有空格。如果你在 Cline 或 CC Switch 里配置检查 Key 字段是否被截断。TaoToken 的 Key 在 API Keys 页面 https://taotoken.net/api-keys?utm_sourcetaotoken_aicg_blog_endutm_contentcursor_react_guideutm_campaignrewrite 可以重新生成生成后旧 Key 立即失效。local proxy failed通常出现在本地开发环境。原因是你配了本地代理地址但代理没启动或者 Base URL 写成了localhost但端口不对。解决方法是把 Base URL 改回https://taotoken.net/api不要走本地代理。如果你确实需要本地代理确认代理进程在跑且端口和配置一致。reading choices 报错这个错误说明客户端在解析返回时找不到choices字段。原因通常是 Model ID 填错导致返回了错误结构或者 Base URL 指向了非 OpenAI 兼容的端点。检查三件套Base URL 是否为https://taotoken.net/api、Key 是否有效、Model ID 是否在文档的模型列表里。接入文档 https://taotoken.net/doc?utm_sourcetaotoken_aicg_blog_endutm_contentcursor_react_guideutm_campaignrewrite 有完整模型列表。OAuth 相关报错如果你用 Claude Code 接入可能会遇到 OAuth 流程问题。检查 Claude Code 的配置是否指向了正确的 Anthropic 通道配置方式在 https://taotoken.net/claudecode-anthropic?utm_sourcetaotoken_aicg_blog_endutm_contentcursor_react_guideutm_campaignrewrite 。OAuth 报错通常是因为回调地址不匹配或 token 过期重新走一遍授权流程即可。cursor 样式不生效如果不是请求问题而是样式问题按这个顺序查——DevTools 看 cursor 是否被覆盖、检查图片路径是否 404、检查图片尺寸是否超限、检查是否跨域、检查父元素是否设置了cursor: inherit导致继承异常。拖拽场景还要检查dragend和mouseleave是否都重置了状态。拖拽后光标卡住这是状态没复位。在onMouseUp、onMouseLeave、onDragEnd三个事件里都要setDragging(false)。如果用了全局 cursor还要在组件卸载时reset()。自定义图片光标在 Safari 不显示Safari 对.png支持有限换成.cur格式或者用supports降级到关键字。另外 Safari 要求图片尺寸不超过 32x32热点坐标必须在图片范围内。排查时建议开两个面板DevTools 的 Elements 看样式Network 看请求。先确认是样式问题还是请求问题再针对性解决。如果请求返回 200 但样式没变问题在 CSS如果请求就报错先修通道再调样式。6. 语义一致 CTA按场景选择 TaoToken 入口整篇的 cursor 定制流程跑下来你会发现样式逻辑和请求通道是两条独立的线。样式问题靠 DevTools 排查请求问题靠统一 Key 和 Base URL 管理。TaoToken 在这里的价值就是把 Key、API 通道、模型调用集中管理避免在多个环境里来回换配置。按你的场景选入口如果你在排查接入问题、需要看 API Keys 和接入文档走 API Keys 页面 https://taotoken.net/api-keys?utm_sourcetaotoken_aicg_blog_endutm_contentcursor_react_guideutm_campaignrewrite 和接入文档 https://taotoken.net/doc?utm_sourcetaotoken_aicg_blog_endutm_contentcursor_react_guideutm_campaignrewrite 。如果你要验证模型返回、生成 cursor 代码片段走模型对话 https://taotoken.net/chat?utm_sourcetaotoken_aicg_blog_endutm_contentcursor_react_guideutm_campaignrewrite 。如果你长期做编码和 Agent 任务需要集中管理多个调试请求走 Coding Plan https://taotoken.net/coding-plan?utm_sourcetaotoken_aicg_blog_endutm_contentcursor_react_guideutm_campaignrewrite 。如果你用 Claude Code 做前端代码生成走 Claude Code Anthropic 通道 https://taotoken.net/claudecode-anthropic?utm_sourcetaotoken_aicg_blog_endutm_contentcursor_react_guideutm_campaignrewrite 。控制台总入口在 https://taotoken.net/console?utm_sourcetaotoken_aicg_blog_endutm_contentcursor_react_guideutm_campaignrewrite 官网在 https://taotoken.net/?utm_sourcetaotoken_aicg_blog_endutm_mediumcsdnutm_campaignrewriteutm_content 。API 地址统一用 https://taotoken.net/api 不加 UTM。最后给一个实用技巧把 Base URL、Key、Model ID 写进项目的.env.local用VITE_或NEXT_PUBLIC_前缀暴露给前端但 Key 不要提交到 Git。调试阶段可以用环境变量切换不同 Key避免硬编码。cursor 样式部分把自定义图片放public/cursors/目录用绝对路径引用跨域问题直接消失。这两条做完你的鼠标样式定制和请求调试基本不会再卡住。

相关新闻

wsnmp32.dll丢失怎么办?官方SFC与DISM修复指南及下载站风险规避

wsnmp32.dll丢失怎么办?官方SFC与DISM修复指南及下载站风险规避

电脑弹窗提示“wsnmp32.dll丢失”这事,绝大多数人第一反应就是去搜索栏找下载站,点进去下载一个不知道哪里来的dll文件,放到System32里。作为一名系统维护干了十来年的人,我先说句实在话:这条路子风险最大,…

2026/10/18 17:29:17 阅读更多 →
飞控计算机硬实时操作系统选型与内核机制解析

飞控计算机硬实时操作系统选型与内核机制解析

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/18 17:28:17 阅读更多 →
ABI 7500-2.0软件实操黑匣子:逆向解析.doc文档的隐藏版本与系统约束

ABI 7500-2.0软件实操黑匣子:逆向解析.doc文档的隐藏版本与系统约束

简介:本资源是ABI 7500 Real-Time PCR系统配套的官方级软件操作指南,专为分子生物学实验室技术人员、临床检验人员及高校科研用户设计,解决ABI7500-2.0软件从初始化连接、实验模板构建到运行分析全流程的操作困惑与常见故障(如USB…

2026/10/18 17:28:17 阅读更多 →

最新新闻

智能座舱语音交互核心技术术语解析:从ASR到TTS的完整链路

智能座舱语音交互核心技术术语解析:从ASR到TTS的完整链路

智能座舱的发布会上,“语音交互”这几个字被反复提及,但真正看参数页和产品通稿时,满屏的ASR、NLU、AEC、TTS、唤醒率、误唤醒、全双工、可见即可说,说实话我刚接触那会儿也一头雾水。车载语音交互和手机上的语音助手完全是两码事…

2026/10/19 4:29:45 阅读更多 →
从数据驱动到函数表映射:轻量级GUI组件注册机制设计实践

从数据驱动到函数表映射:轻量级GUI组件注册机制设计实践

写GUI框架最痛苦的日子,不是画界面,而是给界面里的每个控件找回调。我早期做过一个不到两千行的小型界面库,按钮不过十几个、页面三四个,看起来工作量不大,可每加一个页面就要去改那个全局的switch-case分发函数&#…

2026/10/19 4:29:45 阅读更多 →
上下文工程实战:从记忆分层到检索调优的Agent一致性指南

上下文工程实战:从记忆分层到检索调优的Agent一致性指南

我最早意识到上下文工程是独立问题,是在一个内部工具的第五次联调上。功能明明都对齐了,模型却能在一段对话里反复失忆:上午刚确认的筛选规则,下午就问第二遍;用户上一轮给了三条约束,模型下一轮只记得两条…

2026/10/19 4:29:45 阅读更多 →
Halcon焊球检测实战:Blob分析从例程到产线的参数调优与避坑指南

Halcon焊球检测实战:Blob分析从例程到产线的参数调优与避坑指南

1. 从一张焊球照片说起:这个例程到底在解决什么问题球焊,也就是业内常说的Bond Ball焊接,是半导体封装和精密电子组装里绕不开的一道工序。一根细细的金线或铜线,末端被电弧烧熔成一个自由空气球,然后压焊到焊盘上&…

2026/10/19 4:29:45 阅读更多 →
代码评审为何总流于形式?open-code-review用静态分析帮你抓重点

代码评审为何总流于形式?open-code-review用静态分析帮你抓重点

上个月我给一支后端团队做代码评审流程梳理,发现他们平均一次PR的评审时间是3分钟。三分钟能干什么?点开diff,扫一眼变量命名,说句LGTM,然后合入。代码评审本应是质量防线,结果成了“点头仪式”。后来我把一…

2026/10/19 4:29:45 阅读更多 →
Keras实现DCGAN:从零搭建稳定图像生成模型

Keras实现DCGAN:从零搭建稳定图像生成模型

1. 从零理解 DCGAN:为什么它比普通 GAN 更值得上手搞深度学习的人多少都碰过 GAN,但真正自己动手从零搭一个能跑出结果的,比例其实不高。原因也简单——GAN 的训练出了名的难伺候,判别器和生成器稍微不平衡就崩,要么生…

2026/10/19 4:28:45 阅读更多 →

日新闻

频率跟踪型PWM电源设计:臭氧发生器谐振点漂移与软开关实现

频率跟踪型PWM电源设计:臭氧发生器谐振点漂移与软开关实现

简介:本资源为电源技术方向的学术研究文档,聚焦介质阻挡放电型臭氧发生器电源的频率跟踪型PWM控制策略,面向电力电子、高压电源及臭氧应用领域的科研人员与工程技术人员。针对负载呈容性、等效电容随外加电压升高而增大、谐振频率随之漂移的难…

2026/10/19 0:00:47 阅读更多 →
Vibe Coding 遇上 TaoToken:把开发者思维圣殿的灵感流接入统一 Key 通道

Vibe Coding 遇上 TaoToken:把开发者思维圣殿的灵感流接入统一 Key 通道

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/19 0:00:47 阅读更多 →
HundredCV-Chat话题建模实战教程:利用4,871个内置话题标签构建主题分析系统

HundredCV-Chat话题建模实战教程:利用4,871个内置话题标签构建主题分析系统

【免费下载链接】HundredCV-Chat 项目地址: https://ai.gitcode.com/hf_mirrors/Jax-dan/HundredCV-Chat 点击查看 免费下载 HundredCV-Chat 是一个由 100 位青年简历数据开发而来的中文多轮对话数据集,共包含 24,750 组日常闲聊对话和 4,871 个话题标签…

2026/10/19 0:00:47 阅读更多 →

周新闻

基于GMM的语音识别系统原理与MATLAB实现详解

基于GMM的语音识别系统原理与MATLAB实现详解

说到基于高斯混合模型(GMM)的语音识别系统,很多人第一反应就是一堆数学公式,觉得门槛很高。但如果你真的在MATLAB里把它落地跑通,会发现核心其实就是三件事:把声音变成特征向量,用GMM给每个类别…

2026/10/18 0:00:55 阅读更多 →
数字图像处理入门:反白、灰度化、调色板修改与导出txt实践

数字图像处理入门:反白、灰度化、调色板修改与导出txt实践

数字图像处理这四个字听起来挺唬人,但落到具体操作上,无非就是让计算机按你的想法“摆弄”像素。我在一个模拟项目X里用了一套特别经典的基础处理流程:对图像做反白、改调色板、彩色转灰度,最后把像素数据导出成txt文件。单看每一…

2026/10/18 0:00:55 阅读更多 →
机器人大脑技术盘点:具身智能的感知、决策与数据闭环

机器人大脑技术盘点:具身智能的感知、决策与数据闭环

如果你的信息流最近也天天刷到“机器人大脑”这个词,你会发现一个很有意思的现象:每个人说的“大脑”根本不是同一个东西。有人指的是大语言模型,有人指的是运动控制系统,还有人指的是能理解物理世界的端到端模型。在2026年这个时…

2026/10/19 1:30:52 阅读更多 →

月新闻

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/19 2:54:50 阅读更多 →
Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/17 17:22:31 阅读更多 →
黑夜航拍船只数据集训练YOLOV5模型全流程解析

黑夜航拍船只数据集训练YOLOV5模型全流程解析

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/18 12:16:16 阅读更多 →