文章列表

你的网站或许不需要前端构建

查看评论
你的网站或许不需要前端构建 自从几年前 Webpack 替换掉了 Gulp、Grunt 后,我们可以明显看到前端项目的工程复杂度越来越高,前端技术迭代速度也越来越 阅读全文

简单策略让前端资源实现高可用

查看评论
前几天有朋友问我,曾经在前公司里使用过的前端资源高可用方案是怎么做的。资源高可用听起来应该是后端、运维同学的“分内之事”。但是前端资源的高可用并没有那么简单,在当前复杂的网络环境下,你是指望用户多刷新几次、还是期望用户把Wi-Fi切换为4G,撞大运解决问题?获客成本如此之高的今天,放弃用户是不明智的。想到许久没有写前端相关的文章了,决定在这里简单聊聊。希望能帮助到创业阶段的公司和团队。在聊技术细节之前,我们先聊聊“什么是前端资源高可用”。 阅读全文

使用传统前端技术增强客户端缓存能力

查看评论
前几天重构之后,Lighthouse 中有一个评分让我念念不忘:Progressive Web App。PWA 不算一个新话题了,所以概念性的东西和 API 我就不多做介绍,下面简单介绍一个无干预更新的缓存方案,整体代码量在一百行以内,如果你也想在不“大动干戈”的情况下对站点或者 Web App 进行性能提升的话,可以了解一下。说到 PWA ,我们能直接想到的,无非是 增强缓存 和 推送能力。而这两个能力,都是 ServiceWorker API 实现的。(添加桌面图标这个需求,我不需要,就不介绍了,感兴趣可以自行搜索) 阅读全文

使用前端方式挑战 Chrome 小恐龙游戏高分

查看评论
使用前端方式挑战 Chrome 小恐龙游戏高分 今天看论坛发现有人发帖说 Chrome周年庆祝 在“小恐龙”游戏中埋入了新的菜单,可以触碰的 蛋糕 以及触碰之后获得 阅读全文

动态绑定浏览器插件弹出窗口内容

查看评论
最近在重构插件,把之前和现在遇到的问题都记录一下吧,抛砖引玉,不对的地方,欢迎指正,: )在编写的插件的时候,我们经常会出现仅允许在某些情况下才可以弹出插件窗口的需求,如:用户打开了非插件页面、书签页面甚至是其他的插件页面。 chrome允许我们在manifest指定browseraction和pageaction,但是假如我们直接在manifest文件中指定了这两个json字段的内容,那么弹出窗的内容将会被『锁死』。browseraction和pageaction都包含一个叫做setPopup的API,允许我们动态的设置插件的弹出窗内容,解决问题的关键点之一也就是这个API了。 而在何时执行setPopup,怎么执行setPopup是另外一个关键点,执行过早,插件交互一样会如同诉求起源的问题一样,『锁死』弹出内容。 下面分别以两种类型的插件为例,这两种类型的插件互斥,manifest仅允许存在其中之一(仅简单描述插件的形式区别,暂不展开描述)... 阅读全文