前端技术文章
-
CSS shape() 可以把响应式卡片的裁切路径写成相对尺寸,让 clip-path 在容器变化时保持比例;本文用真实 CSS 片段拆开坐标起点、line/curve 命令、百分比伸缩和 @supports 回退验收。160 收藏 -
文章 · 前端 | 5小时前 | 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 收藏 -
文章 · 前端 | 7小时前 | 前端 · 性能 · 浏览器 · css · 长列表 · 前端性能 content-visibility contain-intrinsic-size 大列表 滚动抖动
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 收藏 -
文章 · 前端 | 11小时前 | javascript · 前端工程 · Web API · 事件监听 · AbortSignal 事件订阅 JavaScript Observable 响应式清理 addEventListener signal
不依赖尚未普遍可用的 Observable API,使用 AbortController 和 AbortSignal 统一管理事件监听、异步请求与订阅清理,讲清生命周期、重复取消和兼容回退。236 收藏 -
文章 · 前端 | 11小时前 | 前端 · javascript · web components · 可访问性 · 表单校验 Web Components ElementInternals Custom Elements Shadow DOM
自定义元素放进原生 form 后,ElementInternals 可以让组件参与表单校验、提交和无障碍语义。本文用一个邮箱字段拆开 setValidity、表单状态同步和回退边界。205 收藏 -
从登录状态、编辑草稿和多窗口协作三个场景出发,对比 BroadcastChannel、localStorage 的 storage 事件与 SharedWorker 的消息路径,给出选择边界和可验证的最小实现。418 收藏 -
用 AbortSignal.timeout 为 fetch 设置可解释的超时边界,区分 TimeoutError、AbortError 与网络错误,并处理响应体读取阶段的取消和兼容降级。223 收藏 -
文章 · 前端 | 1天前 | 前端 · 性能优化 · javascript · Web API · JavaScript ArrayBuffer structuredClone Web Worker transfer
把 ArrayBuffer 交给 Web Worker 或异步校验流程时,structuredClone 默认会复制数据;在 transfer 中传入原始 buffer 才会转移底层资源。本文用 byteLength 和失败分支验收转移后的状态,并说明 DataCloneError 与旧环境降级边界。371 收藏 -
文章 · 前端 | 1天前 | javascript · 前端性能 · 浏览器API · AbortSignal 前端性能 scheduler.postTask Prioritized Task Scheduling
用一个小型任务调度器示例说明 scheduler.postTask 的优先级、AbortSignal 取消和 scheduler.yield 让出主线程边界,并给出浏览器能力检测与降级写法。138 收藏