带有标签 Web 的文章

跨域(Cross-Origin)或者说跨域资源共享(Cross-Origin Resource Sharing)是一个很常见的问题,现在 Web 各个方面都会涉及,正因为如此,它涉及到的内容多而且杂,对于一些特定的使用场景,经常在遇到的时候查一下资料解决了,过几天又忘记了。因此本文就将跨域涉及的问题,做一个(力求)全面的总结。

注:以下文字部分来源于 MDN

目录

...

查看全文

上一篇文章中,我们了解到了,页面首次渲染需要DOM和CSSOM都构建完成才能实现,也就是CSS会阻塞页面的首次渲染。那么外部JS、CSS文件的加载和DOM构建之间是如何相互影响的呢,我们将对此一探究竟。

准备工作

我们将使用一个express服务器,并延时返回请求。文件名中带有delay-n.(css|js)的文件将会在 n * 100ms后返回。整个项目源文件见这里

...

查看全文

本文主要介绍一些新的Web特性。所谓新,要么是以前很难实现或者实现不了,现在可以了;或者是以前的方法太过于复杂,或者影响性能。

Intersection Observer API

一个常见的需求是滚动到底部自动加载,目前一个常见的解决方案是对文档创建scroll事件监听,并计算scrollTop等值来判断页面滚动到了底部,从而触发事件。这样实现的缺点是:scroll事件触发非常频繁,在主线程上运行很影响性能。

...

查看全文

imliyan.com终于启用了HTTP/2了。

为什么之前没支持

好吧,其实HTTP/2在本站是一直开启的,只是由于Google在去年不再支持被OpenSSL 1.0.2以下版本广泛支持的NPN,而转向了ALPN,但ALPN则最低需要OpenSSL 1.0.2版本,而目前的linux服务器,除了Ubuntu 16.04 LTS以及Debian 9.0,其他OpenSSL版本都低于1.0.2。由于OpenSSL是系统服务,直接升级OpenSSL版本可能导致不可预知的系统问题。

...

查看全文

我的首个微信小程序尝试,以及一点看法。

小程序开发

微信小程序的代码架构还是比较清晰的,根目录下 app.js 用于注册小程序,app.json 是小程序的配置文件, app.wxss 是样式表文件。

...

查看全文

由于之前在Comodo申请的SSl证书马上就要到期,刚好看到现在很多网站已经用上了Let's Encrypt的证书,了解了下配置和更新都十分简单,因此决定本站也转向Let's Encrypt。简单记录一下配置过程(环境:CentOS 7 + nginx)。

1.开启EPEL

使用Certbot配置证书,首先要开启EPEL(Extra Packages for Enterprise Linux)。

...

查看全文