前端技术文章
-
搜索框连续输入时,旧请求可能晚于新请求返回并覆盖结果。本文用 AbortController 取消上一请求,配合请求序号和状态复原,收口竞态并给出可运行的验证示例。207 收藏 -
文章 · 前端 | 12小时前 | 前端 · 路由 · javascript · 兼容性 · 浏览器 API · 嵌套路由 JavaScript URLPattern URLPattern groups URLPattern test 浏览器 API
用 JavaScript URLPattern 匹配 /:space/:project/:page 这样的嵌套路由,先用 test 判断是否命中,再从 pathname.groups 取参数,并通过特性检测为旧浏览器保留回退路径。445 收藏 -
用 structuredClone 复制前端表单草稿时,普通对象、File 和不可序列化字段的行为并不相同。本文从真实的编辑草稿场景出发,拆开克隆、转移与 DataCloneError 的边界,并给出可复测的检查方法。213 收藏 -
长列表加载更多时,IntersectionObserver 可能因哨兵节点持续可见而重复触发。本文用 sentinel、entry.isIntersecting、loading 和 loadMore 收口一次请求,处理快速滚动与末页边界。106 收藏 -
CSS shape() 可以把响应式卡片的裁切路径写成相对尺寸,让 clip-path 在容器变化时保持比例;本文用真实 CSS 片段拆开坐标起点、line/curve 命令、百分比伸缩和 @supports 回退验收。160 收藏 -
文章 · 前端 | 23小时前 | html · 前端 · javascript · 弹窗 · 浏览器API · dialog close cancel HTMLDialogElement requestClose
用原生 dialog 做确认弹窗时,requestClose() 能把 Esc、关闭按钮和脚本关闭统一到 cancel 与 close 两个事件,并保留 returnValue 的结果语义。163 收藏 -
中文搜索框不能靠空格切词。本文用 JavaScript Intl.Segmenter 的 word 粒度保留 segment、index 与 isWordLike,再把字符位置映射到高亮范围,处理中文、英文和表情符号的边界。111 收藏 -
中文摘要不能只按字符串下标截断,否则容易把词和表情拆开。本文用 Intl.Segmenter 的 word 粒度处理中文边界,再用 isWordLike 和 supportedLocalesOf 设计多语言回退。290 收藏 -
content-visibility:auto 可以跳过屏幕外内容的绘制,但尺寸估计不准时会让滚动条和滚动位置抖动。本文用 contain-intrinsic-size、auto 记忆尺寸和渐进校验拆开性能收益与布局稳定性的取舍。366 收藏 -
ResizeObserver 回调里直接改尺寸,容易触发布局反馈和连续通知。本文用 pending 标记、requestAnimationFrame 与 applyLayout 拆开读写阶段,说明如何定位循环回调并保留可验收的布局更新链路。439 收藏 -
AbortController 取消 fetch 并不等于已经停止 Promise 链。本文用一个组件卸载场景拆解 signal、catch 和状态门禁的关系,给出可复用的前端请求收口写法。465 收藏 -
用 Fetch Response.body 和 ReadableStream 将搜索结果按块解析并增量渲染,说明 reader.read、TextDecoderStream、controller.desiredSize 与背压边界。460 收藏 -
从一个面板尺寸越改越抖的实际场景出发,定位 ResizeObserver 反复触发的回路,区分布局读取与写入边界,并用稳定尺寸和帧内合并完成验证。346 收藏 -
文章 · 前端 | 1天前 | javascript · 前端工程 · Web API · 事件监听 · AbortSignal 事件订阅 JavaScript Observable 响应式清理 addEventListener signal
不依赖尚未普遍可用的 Observable API,使用 AbortController 和 AbortSignal 统一管理事件监听、异步请求与订阅清理,讲清生命周期、重复取消和兼容回退。236 收藏 -
文章 · 前端 | 1天前 | 前端 · javascript · web components · 可访问性 · 表单校验 Web Components ElementInternals Custom Elements Shadow DOM
自定义元素放进原生 form 后,ElementInternals 可以让组件参与表单校验、提交和无障碍语义。本文用一个邮箱字段拆开 setValidity、表单状态同步和回退边界。205 收藏