-
SharedArrayBuffer无法直接同步DOM对象,只能通过共享轻量元数据(如ID、坐标、状态标志等)实现高速同步;主线程与Worker各自维护DOM映射,借助定长结构体、原子操作和双缓冲协议协作,避免序列化开销,延迟可达亚毫秒级。
-
用CSS自定义属性映射状态颜色的正确做法是:先通过属性选择器(如[data-state="error"])声明--state-color等变量,再在通用规则中用var(--state-color)消费,实现状态与样式的解耦和集中维护。
-
设body背景无效主因是高度不足、默认margin和层叠覆盖;需设margin:0、min-height:100vh,优先用html背景控制视口,注意深色模式干预与background简写清空规则。
-
用Set实现高性能权限校验,依托其唯一性和O(1)has()查询,适用于前端路由守卫、按钮显隐等场景;初始化时将后端数组转为Set,多角色权限用展开运算符合并,动态更新需批量操作并配合响应式方案。
-
inset是CSS定位复合属性,仅对position为absolute、fixed或sticky的元素生效;语法类似margin,支持1–4个值映射top/right/bottom/left,需配合定位上下文使用且不兼容旧版Safari。
-
一键夜间模式核心是用CSS变量定义两套主题色,通过JS切换data-theme属性值并读取localStorage持久化,优先用户选择、其次系统偏好,配合合理transition避免闪烁,确保所有元素都使用var()取值。
-
不行,浏览器不支持直接用<img>标签轮询RTSP/RTMP流;必须通过流媒体服务转成HLS(.m3u8)或WebRTC等浏览器可解码格式,或使用海康WebComponents等官方SDK实现。
-
:has()伪类兼容性有限,Chrome105/Firefox103/Safari16.4起支持,旧版本静默失效;不支持伪元素和状态伪类;构建工具可能误删;JS监听+class切换更可靠。
-
使用CSSGrid和媒体查询可高效创建响应式广告位:先用Grid定义多列布局,再通过媒体查询在小屏下调为双列或单列,结合minmax()实现弹性列宽,使广告自适应不同设备,同时注意图片适配与性能优化。
-
答案:处理CSS浮动中文本对齐需清除浮动、触发BFC解决塌陷、设置text-align对齐文本,推荐用Flex布局替代。
-
WebWorkers是HTML5提供的后台线程API,用于在独立于主线程的环境中执行JavaScript脚本,避免阻塞UI。通过newWorker('worker.js')创建实例,利用postMessage传递数据,onmessage接收结果,实现主线程与Worker线程间的消息通信。Worker分为DedicatedWorker、SharedWorker和ServiceWorker,其中DedicatedWorker适用于单一脚本的高负载计算任务。由于线程间数据通过结构化克隆算法序列化传输,大对象传递
-
confirm()会阻塞主线程且现代浏览器限制严格,应改用Promise封装的自定义弹窗组件实现:遮罩层+可聚焦按钮+键盘支持+异步返回。
-
直接用diff-match-patch浏览器端实现HTML差异高亮,因其纯字符串级对比、无需后端、不解析DOM、内置XSS防护(需配合DOMPurify转义)、支持字符级精准标红/绿(如<del>lo</del><ins>hi</ins>),且5分钟可完成可交互页面开发;而diff命令和gitdiff仅输出unifiedpatch格式,需额外工具转换,且无自动转义易致XSS。
-
用更高特异性选择器替换!important是绝大多数场景下唯一可持续解法,因其遵循CSS层叠逻辑正道,避免“谁的!important更重要”死循环,并支持可维护的权重演进。
-
前端跨域问题因浏览器同源策略导致,可通过9种方案解决:1.后端配置CORS允许跨域;2.Nginx反向代理使请求同源;3.开发环境使用Vite或webpack代理;4.JSONP实现GET跨域(仅支持GET);5.postMessage实现跨窗口通信;6.WebSocket不受跨域限制用于实时通信;7.document.domain适用于主域相同子域不同场景;8.window.name+iframe中转兼容旧浏览器;9.使用cors-anywhere等代理服务临时调试。推荐开发用本地代理,生产环境由后端配