-
iOSSafari全屏失效主因是video标签缺失playsinline和webkit-playsinline属性,且需绑定用户手势调用requestFullscreen(),同时排除父容器CSS限制、插件配置干扰及WebView策略影响。
-
最基础的跳转是<ahref="xxx">点击</a>,但易因路径错误、协议缺失或目标页不存在而失败;应优先用绝对路径(外链带协议,内链用根相对路径),避免空href、#或javascript:void(0)等副作用写法,传参需URL编码,SPA中须用框架路由组件而非原生a标签。
-
Vitest比Jest更轻量、启动快、原生支持ESM/TS,新项目优先选;Jest适合大型遗留项目;测试应从纯函数、条件工具函数、逻辑明确的hook入手,避免过度mock;注意模块mock写法、异步测试await处理及React环境配置。
-
微信禁止加载本地HTML文件,必须通过HTTP/HTTPS服务器访问;开发可用python-mhttp.server,上线需托管至GitHubPages等支持HTTPS的平台,并严格配置JS-SDK签名与安全域名。
-
使用Flexbox或Grid可实现元素水平与垂直对齐,如Flexbox通过justify-content和align-items居中,Grid用place-items:center,而传统float不支持垂直浮动,仅推荐用于文本环绕。
-
JavaScript是独立于Java的浏览器脚本语言,核心是实现网页交互;初学者应优先掌握console.log()调试、const/let声明、addEventListener()绑定事件和fetch()异步请求。
-
split()方法有四大关键细节:空字符串分隔符逐字符拆分(IE8不支持);分隔符未匹配时返回原字符串单元素数组;正则捕获组内容会插入结果数组;limit参数限制长度,0得空数组,负数等同不限制。
-
按钮点击没反应的首要原因是onclick未在正确环境下执行,如浏览器禁用JS或页面以file://协议打开;其次检查DOM是否加载完成、ID拼写是否一致、按钮是否被遮挡或设置了pointer-events:none;表单内按钮需明确type属性并用preventDefault()阻止默认刷新。
-
script标签最稳妥的位置是放在</body>之前;放在head中需加defer或async,内联脚本不宜用于生产环境,外部脚本更利于缓存与维护,type属性影响执行行为,动态插入需注意加载时机与跨域配置。
-
模板字符串是JavaScript中用反引号包裹、支持表达式插值、多行书写和标签函数的字符串语法,相比传统拼接更安全、清晰、易维护,且无运行时性能劣势。
-
首先使用JavaScript的navigator.geolocation获取用户位置,再结合GoogleMaps或高德地图API将坐标展示在地图上,支持单次定位与持续追踪,需注意权限处理、错误回调及国内地图替代方案的选择。
-
float后文本绕图是因浮动脱离文档流但行框仍留空间,属设计行为;解决需触发BFC(如overflow:hidden或display:flow-root)或clear:both清浮动。
-
答案:HTML弹性布局核心是CSSFlexbox模块,通过在父容器设置display:flex;使子元素成为Flex项目并沿主轴排列,利用flex-direction、flex-wrap、justify-content、align-items等属性控制方向、换行、对齐方式,结合flex-grow、flex-shrink、flex-basis实现空间分配,支持嵌套与响应式设计,解决垂直居中、等高布局、间距控制等难题,相比传统布局更简洁高效,适用于导航栏、卡片列表、表单及复杂组件布局。
-
获取数组最后n个元素的推荐方法是使用slice(-n)或_.takeRight();1.使用Array.prototype.slice(-n)可直接获取末尾n个元素,若n大于数组长度则返回整个数组,若n为0或负数则返回空数组(但slice(-0)等同于slice(0),返回整个数组);2.使用Lodash的_.takeRight(array,n)语义更清晰,行为更符合直觉,n为0或负数时明确返回空数组;选择取决于是否已引入Lodash及对代码可读性的要求,原生slice无需依赖且性能佳,而takeRigh
-
雪碧图background-position需以元素左上角为原点,垂直堆叠时第二图标为0-16px;内联style限首屏小样式(≤1KB),禁用normalize等大文件;base64临界值建议设4096;preload必须加as="style"。