-
WebWorkers是浏览器提供的后台JavaScript运行机制,能将耗时任务移出主线程以避免页面卡顿;2.它通过newWorker()创建独立执行环境,利用postMessage和onmessage实现与主线程的消息传递,数据被序列化复制而非共享;3.Worker可执行网络请求、使用IndexedDB等,但无法访问DOM和window对象;4.适用于计算密集型任务如大文件处理、图像滤镜、海量数据解析等;5.DedicatedWorker为单页面服务,SharedWorker允许多标签页共享,Servi
-
最稳妥方案是用<iframe>嵌入第三方幻灯片,PowerPointOnline等平台已处理跨域、响应式等问题;禁用X-Frame-Options时需换平台或导出静态页;手写轮播器应使用transform切换并避免重排;Reveal.js本地集成须注意路径与加载顺序;移动端需配置touch-action和viewport。
-
Grid背景动画“错位”的根本原因是尺寸不稳定或渲染层异常,需固定子项尺寸、强制图层合成、用命名网格线锚定位置,并规范keyframes写法。
-
当animation-delay为负值时,动画从计算出的进度百分比处瞬时跳转开始播放,如duration:2s、delay:-0.5s则从25%进度起始,后续仍正向完整循环。
-
SVG路径虚线动画本质是通过JS获取路径总长度并动态控制stroke-dasharray与stroke-dashoffset实现;必须用getTotalLength()计算真实长度,配合CSS变量同步至样式,否则动画错位或失效。
-
浮动元素撑不满父容器时滚动条意外出现的直接原因是父容器设置overflow:auto/scroll且未清除浮动,导致高度坍塌被误判为内容溢出;需用clearfix、display:flow-root等方法建立BFC清除浮动。
-
要让border-radius和box-shadow同时平滑过渡,需在transition中显式声明二者并保持结构一致:border-radius支持数值过渡,box-shadow要求offset-x、offset-y、blur-radius、spread-radius、color的项数和单位统一,且不可混用inset与非inset;推荐使用相同duration和timing-function,并可叠加transform实现更流畅动画。
-
正确做法是用li:not(:last-child){border-bottom:1pxsolid#ddd;}精准控制非末项加线;兼容IE8则用li{border-bottom:1pxsolid#ddd;}li:last-child{border-bottom:none;}。
-
auto-fill先建满所有可能轨道并留空占位,auto-fit按子元素数量建轨后拉伸填满;前者适合需预留插槽的场景,后者适合内容自适应布局。
-
双击HTML文件打不开是因浏览器安全限制file://协议,非转换失败;应使用http.server或LiveServer等本地服务解决,注意路径、权限及缓存问题。
-
核心解法是用max-width:100%配合媒体查询做响应式约束:img{max-width:100%;height:auto;},大图加.detail-img{max-width:800px;margin:0auto;display:block;},并限制父容器宽度如.detail-content{max-width:1200px;margin:0auto;}。
-
JavaScript深拷贝需创建完全独立的新对象,常用方法有:JSON.parse(JSON.stringify())(限制多)、structuredClone()(现代推荐)、手写递归(灵活可控)、Lodash的_.cloneDeep()(生产稳妥)。
-
Sass嵌套不解决CSS全局污染,真正隔离靠BEM等命名约定;&用于锚定作用域,误用空格或忽略&会导致样式泄漏;过度嵌套拖慢编译、增加权重;需配合变量、mixin和lint约束。
-
HTML5视频播放器无法降级到Flash,因所有现代浏览器已彻底移除Flash支持;应通过canPlayType检测真实兼容性,并用flv.js、hls.js等JS库替代实现FLV/HLS/DASH播放。
-
ES6是JavaScript第6版标准(ECMAScript2015),补齐语法、对象模型与异步能力;let/const提供块级作用域与赋值约束;箭头函数简化this但无自身this/arguments;解构与模板字符串提升可读性;Promise与async/await解决回调地狱。