-
CSS变量更新后:hover动画不更新,因浏览器懒触发样式重算,仅在鼠标移入时读取变量快照;calc()混用、旧浏览器不支持动态变量、未触发hover状态均会导致失效。
-
Symbol是JavaScript中的原始类型,用于创建唯一不可变值,常作为对象属性键以避免命名冲突。通过Symbol()函数生成,即使描述相同也互不相等,确保唯一性。Symbol属性不会被for...in或Object.keys()遍历,需用Object.getOwnPropertySymbols()访问。可用于模块间安全添加属性,防止覆盖。内置well-knownSymbols如Symbol.iterator、Symbol.toStringTag可自定义对象行为,实现可迭代、修改toString结果等
-
CF_HTML是Windows剪贴板中用于传递带样式HTML片段的特定格式,需用navigator.clipboard.write()配合text/html与text/plain双格式Blob写入,并严格遵循StartFragment/EndFragment等结构规范。
-
<p>data-*属性仅用于存储静态、轻量、非敏感的上下文信息,命名须小写连字符(如data-order-status),JS中通过dataset.orderStatus访问,写入必须用setAttribute,值恒为字符串且明文可见。</p>
-
Vue项目离线缓存异步路由需预缓存带哈希的JS/CSS分块文件,并配置navigateFallback至/index.html,配合history模式与前端路由兜底,确保断网时仍可访问/about等页面。
-
纯CSS可实现侧边栏左右拉伸,但仅WebKit浏览器(Chrome/Safari/Edge)支持通过::-webkit-scrollbar扩展拖拽区域为竖线;Firefox仅限右下角小区域且不支持该扩展,属浏览器限制而非写法错误。
-
要消除动画首帧延迟,需用will-change精准预告即将变化的transform或opacity等可合成属性,并在交互时动态添加、动画结束立即移除,配合DevTools验证图层是否真正生成。
-
应使用addEventListener('dblclick')而非ondblclick属性,因后者存在this指向错误、无法传参、不可移除、框架不兼容及浏览器双击判定差异等问题;正确做法是绑定'dblclick'事件并配合节流处理单双击冲突,移动端需用pointerdown自行实现双击检测。
-
scroll-timeline需滚动容器、时间轴定义、动画绑定三者配合;Chrome/Edge115+原生支持,Firefox需开启flag且受限,Safari当前完全不支持。
-
直接运行vite即可启动HTML开发服务器,无需配置、框架或JS模块,只要根目录有index.html;常见错误包括未安装vite依赖、index.html位置或命名错误、误用vitepreview替代开发服务器,路径引用须以index.html所在目录为基准。
-
RxJS操作符是纯函数,用于创建、转换、过滤、组合Observable。核心分类包括:of、from等创建类;map、switchMap、mergeMap等转换类,实现数据映射与流切换;filter、debounceTime、throttleTime等过滤类,控制值的输出频率;combineLatest、zip等组合类,融合多流数据;catchError、retry等错误处理类,保障流的稳定性。其中,switchMap常用于搜索防抖,mergeMap支持并发请求,debounceTime减少高频事件触发,
-
重复媒体查询导致维护困难,主要因断点修改需全局替换、样式分散难对齐、编译后冗余膨胀;应抽离断点为变量和@mixinrespond-to($breakpoint),由调用方传入内容,避免嵌套@media,并统一模块化管理与导入。
-
纯CSS弹窗动画需用visibility+opacity+transform组合,禁用display;原生dialog须弃用showModal()改用show()+自定义backdrop;触发动画前需offsetWidth强制重排;移动端须加will-change和translate3d启用GPU加速。
-
JavaScript错误处理需分层拦截、类型识别与明确抛出:try...catch不捕获异步错误、语法错误及未处理Promise拒绝;应使用Error子类区分业务异常,Promise链须显式catch,全局需同时监听error和unhandledrejection事件。
-
移动端多列网格布局应优先使用display:grid,因其通过grid-template-columns一行定义列数与响应行为,比Flexbox更直接稳定;Flexbox仅适合一维排列,强行用于多列易导致换行错位和高度不一致。