-
IE8不支持oninput,必须用onpropertychange替代,但需过滤propertyName、防递归触发、处理disabled失效及JS赋值场景,contenteditable和textarea需轮询兜底。
-
JavaScript生成器函数是可暂停执行的函数,返回迭代器对象;调用后需用next()推进执行,yield暂停并输出值,return终止并设done:true。
-
用scrollHeight实现textarea高度自适应最稳定:每次input前先设style.height='auto',再读取并设置scrollHeight;需处理IE11换行符偏差和iOSSafari延迟问题。
-
纯HTML+JavaScript实现购物车需用HTML结构、CSS样式、JS交互,核心是添加商品、更新数量、计算总价,配合localStorage持久化与事件委托绑定。
-
video的poster属性必须为可访问的http/https网络URL,不支持本地路径;需配合preload="metadata"和有效src才能显示;播放结束后需手动监听ended事件恢复封面。
-
可通过五种方法复制HTML或文本:一、开发者工具复制outerHTML/innerHTML;二、控制台解除选择限制;三、使用浏览器扩展;四、控制台执行querySelector+clipboard.writeText;五、保存网页后编辑提取。
-
用input.value获取控件当前值(含用户输入),而非getAttribute('value');多选下拉框需遍历options或用selectedOptions;checkbox/radio用checked判断状态,value恒为初始值;校验需调用checkValidity()并检查validity对象。
-
:focus状态下outline不消失是因浏览器UA样式优先级高或:focus-visible策略干扰;应避免直接outline:none损害可访问性,改用outline:2pxsolidtransparent或自定义样式,并补充-webkit-appearance:none等兼容写法。
-
真视差需JS监听scroll+requestAnimationFrame节流,用getBoundingClientRect计算元素视口位置,再以transform:translateY动态控制各层位移强度,禁用top/margin避免重排。
-
MP3文件无法转换为HTML,只能通过<audio>标签嵌入网页播放;需确保路径正确、添加controls和preload="metadata"属性,并提供.ogg备用格式以兼容Safari。
-
fixed弹窗叠在同一位置因均用固定top值且不参与文档流;需JS动态计算每个弹窗的top,基于已存在弹窗的实际高度与间距累加,并排除正在关闭的节点,确保DOM顺序、视觉状态与布局同步。
-
errorCaptured是Vue2.5+和Vue3中用于捕获子组件(含孙子)在渲染、生命周期钩子或事件处理中抛出的同步错误的钩子,不捕获自身错误和未桥接的异步错误;需返回false阻止错误冒泡。
-
使用repeat(auto-fit,minmax(200px,1fr))可实现等宽列自动布局,浏览器会根据容器宽度自动调整列数;minmax确保每列最小宽度为200px,空间充足时均分剩余宽度;auto-fit在屏幕变窄时减少列数并拉伸现有列,保持紧凑排列;相比auto-fill,auto-fit更适合响应式卡片布局,无需媒体查询即可适配多端屏幕。
-
JavaScript无法完全防止源码被查看,但可通过混淆(如Terser、javascript-obfuscator)、服务端逻辑下沉、动态加载、SourceMap脱离及反调试等分层手段提升逆向成本;禁用右键或Base64编码等做法无效。
-
Flex布局才是真·等间距解法,靠justify-content:space-between或space-around由浏览器自动分摊空白,需配display:flex、明确宽度及flex-wrap:wrap,并用object-fit或容器裁切统一图片尺寸以确保视觉等距。