女王控的博客

全部

232 篇文章

iframe和HTML5 blob实现当前页预览

实现方式 通常会新建一个另外的独立页面,专门用来接收传入的前端代码,通过新开窗口或者嵌入 iframe 页面的方式达到最终效果,其中可能会用到 HTML5 postMessage 等通信技术。 然而实际上,对于这个预览效果,如果代码是我们自己控制,而不是全权交给用户编辑的,是没有必要新建一个另外的预览页面,亦或者是在新窗口(新标签页)中浏览的。可以直接在当前页面构建一个文档上下文,实现更加方便快捷的预览。 核心原理 需要注意的是,当我们使用 new Blob… »

JS检测CSS属性浏览器是否支持

原生 CSS.supports 语法 返回布尔值 true 或者 false,用来检测是否支持某 CSS 属性。 实际开发的时候,需要使用到对 CSS 检测场景,往往都是针对低版本的 IE 浏览器,例如 IE9-IE11,低版本的 IE 浏览器并不支持浏览器原生支持的 CSS.supports()方法。 JS 赋值再取值的检测方法 当浏览器不支持某个 CSS 属性的时候,就算你强制设置,获取的计算值也不会是你设置的属性值 注意点 getComputedStyle… »

Node.js入门学习

基础 模块 require require 函数用于在当前模块中加载和使用别的模块,传入一个模块名,返回一个模块导出对象。模块名可使用相对路径(以./开头),或者是绝对路径(以/或 C:之类的盘符开头)。另外,模块名中的 .js 扩展名可以省略。以下是一个例子。 另外,可以使用以下方式加载和使用一个 JSON 文件。 exports exports 对象是当前模块的导出对象,用于导出模块公有方法和属性。别的模块通过 require 函数使用当前模块时得到的就是当前模块的 exports… »

轻量级网站构建实践

需求背景 最近在做表单分享的需求,类似于问卷调查,需要在三端(桌面端、移动端、微信端)同时兼容 技术方案 我出的方案:采用原生语法新框架写,考虑到首屏渲染的问题未采用 主管出的方案:采用后端渲染模板的方式,最大化首屏加载速度,但有以下问题: 后端渲染对服务器 CPU 的要求较高 本来打算用 oss 来减少后端渲染,但考虑到表单经常变化,且分享的链接要尽可能的保持不变,这就限制了 oss… »

构建多平台轻量化组件的实践

需求背景 需求背景接上文 记一次组件打包为链接的实践 框架搭建接上文 Webpack 脚手架搭建笔记——记一次新项目搭建 组件轻量化 在将客服组件上线后,由于未考虑到加载的组件包的大小,尤其是初始加载的包比较大,即使是压缩过初始加载也有 600 多 k… »

0%