Cairo与Skia是两个知名的2D渲染图形库。其中,Cairo使用C[…]
分类:技术
理解贝塞尔曲线
贝塞尔曲线有广泛的用途,如动画曲线、字体设计、建模等,如下图所示。 在[…]
SharedArrayBuffer与幽灵漏洞(Spectre)
SharedArrayBuffer是一个前端跨线程共享数据的方案。它被[…]
使用指针事件处理多端设备“定点”输入问题
如果一套代码既要兼容PC端又要兼容移动端的话,经常会遇到这样一个痛点:[…]
随机数的故事
在JavaScript里面产生随机数的方式是调用Math.random[…]
常见空格一览
最近在写CSS的时候遇到了一个问题,有一个高度属性值不合法: 从肉眼看[…]
CSS filter与前端滤镜
今天(2020.04.04)很多网站都换成了灰色调,如淘宝百度掘金知乎[…]
一个element.__vue__引发的馒头
最近出现了一个测试环境页面卡死的问题,打开页面一会之后就死掉了,如下图[…]
JS与数
本篇将讨论JS在数字类型方面的一些表现和特性 1. 0.1 + 0.2[…]
老铁,听说你的setTimeout不会触发,咋整
最近在一台安卓手机的webview里面遇到一个神奇的问题,setTim[…]
再谈HTTPS
本篇将讨论HTTPS的加解密原理,很多人都知道RSA,以为HTTPS […]
如何实现一个下载进度条/播放进度条
技术上没太大难度,有难度的地方是怎么让整个动画比较流畅。一个主要问题是[…]
老铁,听说TypeScript很牛逼?
TypeScript是啥,有人说TypeScript = Type +[…]
一个Vue引发的性能问题
笔者最近在一个Vue项目里面引入了一个动画库,但是发现性能有点异常,项[…]
从Chrome源码看事件循环
我们经常说JS的事件循环有微观队列和宏观队列,所有的异步事件都会放到这[…]
实现前端弹簧动效
弹簧动效是IOS系统原生自带的一个效果,如在iPhone上面的照片点开[…]
实现WebRTC P2P连接
WebRTC是为了解决实时音视频传输问题,致力于提供免安装、免插件、免[…]
如何实现前端录音功能
前端实现录音有两种方式,一种是使用MediaRecorder,另一种是[…]
怎么实现一个3d翻书效果
本篇主要讨论以下两种翻书动画的实现: 第一种是整页翻转的效果: 这种整[…]
从Chrome源码看audio/video流媒体实现二
第一篇主要介绍了Chrome加载音视频的缓冲控制机制和编解码基础,本篇[…]