-
XMLHttpRequest(XHR)是实现网页异步通信的基础API,用于在不刷新页面的情况下与服务器交换数据;2.它通过readyState五个状态(0-4)管理请求生命周期,并支持onreadystatechange、onerror等事件精细控制流程;3.常见陷阱包括跨域CORS需服务器配置、回调地狱导致代码难维护、错误处理需区分HTTP状态码与网络错误、禁止使用同步请求避免页面卡死、接收数据须防XSS攻击。
-
<p>HTML5注释语法仍为<!---->,未新增功能;禁止注释内含--或以-结尾;条件注释已失效;script/style内须用对应语言注释;不支持嵌套;位置与特殊字符需谨慎。</p>
-
JavaScript原型链本质是属性查找路径:先查对象自身,再沿[[Prototype]]向上遍历至null;继承即委托而非复制;函数有prototype属性,实例通过__proto__链接其上;需区分__proto__(非标准)与Object.getPrototypeOf(),并注意constructor可靠性及箭头函数无prototype。
-
不支持@keyframes的浏览器会完全忽略动画,无降级、无报错、无fallback;可靠检测需用临时元素+computed样式;transition仅适用于两态切换,JS降级用于复杂动画,推荐@supports分层控制。
-
可将CAD图纸转换为WebGL、SVG、PDF或使用专用SDK实现网页展示。首先选择适合图纸类型的转换方式,如三维模型用glTF配合Three.js,二维图转SVG,或通过AutodeskForge直接解析原生格式,也可导出PDF结合PDF.js嵌入网页,从而让用户无需专业软件即可在线查看并交互。
-
使用CSS动画实现侧边栏展开收起,通过transform和transition提升性能,结合JavaScript控制状态,并利用媒体查询适配不同屏幕,确保流畅交互与良好用户体验。
-
用CSSGrid实现对角线交错布局的关键是显式设置每个对角元素的grid-row和grid-column(如1/1、2/2),容器设display:grid并合理定义行列,只渲染对角元素以确保其余格子真正“流空”。
-
order仅改变视觉顺序,不影响DOM和可访问性顺序;必须在flex容器中使用,数值越小越靠前,推荐显式设置-1/0/1避免魔数,Grid中可用但可能被grid-row等高优先级属性覆盖。
-
用CSS骨架屏加载效果的核心是渐变背景+位移动画:1.用语义化空元素占位并设浅灰底色和圆角;2.线性渐变创建亮色条带,配合background-size和background-position实现扫描光效;3.通过@keyframes让背景位置水平移动,时长1.5~2s,infinite循环;4.优化细节如头像溢出隐藏、文字间距、按钮尺寸及动画错峰。
-
必须先用getContext('2d')获取CanvasRenderingContext2D对象才能绘图,否则调用fillRect等方法会报错;fillRect填充矩形,strokeRect仅描边,二者样式不共享;Canvas尺寸应通过width/height属性设置,而非CSS;动画中需每帧clearRect并合理管理状态。
-
WebComponents是浏览器原生标准,含CustomElements(需含短横线、继承HTMLElement、用define注册)、ShadowDOM(open/closed模式、slot分发、样式隔离)和template克隆机制,但无内置响应式,通信依赖属性/事件。
-
微博实时热搜原始数据需调用隐藏API接口https://weibo.com/ajax/side/hotSearch,返回含realtime等三类数据的JSON,无需登录但需带合法移动端UA;直接访问weibo.com/hot会跳转或空白因其为前端路由且依赖JS加载。
-
CSSGrid溢出需同时设置容器overflow和子项min-width/min-height:0;否则默认min-width:auto会撑开轨道。可实现整体滚动、子项局部滚动或hidden裁剪。
-
答案是直接在浏览器运行HTML文件只需保存为.html后缀并用浏览器打开。使用文本编辑器编写代码,保存为index.html等格式,通过双击、拖拽或菜单方式在Chrome、Edge等浏览器中打开,修改后保存并刷新即可预览,配合开发者工具可调试,注意文件类型选“所有文件”并使用UTF-8编码。
-
实现一个符合PromiseA+规范的Promise库,需定义PENDING、FULFILLED、REJECTED三种状态,构造函数执行executor并传入resolve和reject方法,通过onFulfilledCallbacks和onRejectedCallbacks存储异步回调;then方法返回新Promise,根据当前状态异步执行onFulfilled或onRejected,并调用resolvePromise解析返回值x;resolvePromise函数处理x为promise或thenable的