-
从响应头、iframe allow、来源继承和浏览器授权四层拆解 Web API 被 Permissions Policy 阻止的排查方法,给出最小配置、检查代码与 Report-Only 使用边界。
-
Atomics.waitAsync 用非阻塞方式等待 SharedArrayBuffer 状态变化,但返回值同时存在同步字符串与异步 Promise。本文用最小示例说明返回判断、store/notify 顺序、超时分支和兼容性降级。
-
CSS.registerProperty() 可以为自定义属性声明语法类型、继承策略和初始值,让颜色、长度等值更适合参与 CSS transition。本文用原创示例说明四个字段、动画接法、重复注册异常和兼容性降级。
-
自定义元素默认不会自动进入原生表单校验和提交流程。本文用 ElementInternals、setFormValue 和 setValidity 实现一个可提交、可校验的自定义表单控件,并说明 name、required 与空值处理边界。
-
TreeWalker 中 FILTER_SKIP 只跳过当前节点,仍会继续检查后代;FILTER_REJECT 则会剪掉当前节点及整棵后代子树。本文用静态 DOM 示例说明两者差异,并解释为什么收集文本时通常要同时显示元素和文本节点。
-
本文详解 React 中因 useCallback 依赖数组遗漏状态变量,导致 useState 切换函数仅执行一次的问题,并提供正确写法、原理分析与最佳实践。 本文详解 React 中因 `useCallback` 依赖数组遗漏状态变量,导致 `useState` 切换函数仅执行一次的问题,并提供
-
本文讲解如何通过事件委托(Event Delegation)为动态添加的 .checkbox 元素正确绑定点击事件,解决直接遍历 querySelectorAll 导致新元素无响应的问题。 本文讲解如何通过事件委托(Event Delegation)为动态添加的 `.checkbox` 元素正确绑定
-
用 AbortController 和 AbortSignal.timeout 为 Fetch 设置超时,区分 TimeoutError、AbortError、HTTP 状态和普通网络错误,并给出兼容回退写法。
-
用 PerformanceResourceTiming 的域名解析、连接和安全连接时间戳拆分 DNS、TCP、TLS 耗时,并处理跨域受限、缓存命中与连接复用导致的零值。
-
URLPattern 可以在同一个对象模式中分别声明 hostname 与 pathname,并从 exec 返回值的对应组件读取命名分组。本文用多租户项目地址演示域名参数、路径参数、相对 URL、未匹配处理和旧环境回退。
-
复杂组件更新时,CSS contain 可以把布局、绘制、样式或尺寸计算限制在子树内。本文说明 layout、paint、size、content 的边界,解释定位和溢出副作用,并给出 contain-intrinsic-size 的实用写法。
-
React useEffect 发起搜索请求时,旧请求可能晚于新请求返回并覆盖页面状态。本文用 cleanup 的 ignore 标记与 AbortController 两层边界处理竞态,并用可观察指标判断修复是否生效。
-
长列表加载更多时,IntersectionObserver 可能因哨兵节点持续可见而重复触发。本文用 sentinel、entry.isIntersecting、loading 和 loadMore 收口一次请求,处理快速滚动与末页边界。
-
IntersectionObserver 观察列表底部时反复触发,通常源于初始通知、相交状态变化与分页请求状态混在一起。本文用 loading、hasMore、nextCursor 和 unobserve 组合,避免同一页重复请求。
-
用 AbortSignal.any 把用户取消和超时合并为一个 fetch 信号,并根据 reason 区分取消来源,补充监听器清理与兼容性边界。