跳到主要内容

79 篇博文 含有标签「Fullstack」

查看所有标签

Intro to HTTP/1

· 阅读需 10 分钟
Kimi Gao
Fullstack & AI
C-8t64sXYAEf7GG

前言

在 HTTP 发布正式版之前,HTTP 的版本号被定位在 0.9 以区分后来的版本。HTTP/0.9 极其简单:请求由单行指令构成,以唯一可用方法 GET 开头,其后跟目标资源的路径。

GET /mypage.html

请求的响应不包含 HTTP 头,且只支持传输 HTML 类型的文档,无法传输其他类型的文件;也没有状态码或错误代码:一旦出现问题,一个特殊的包含问题描述信息的 HTML 文件将被发回,供人们查看。

Javascript setTimeout & setInterval

· 阅读需 23 分钟
Kimi Gao
Fullstack & AI

有时我们并不想立即执行一个函数,而是等待特定一段时间之后再执行,目前有两种方式可以实现:

  • setTimeout 将函数的执行推迟到一段时间之后再执行。
  • setInterval 让函数间隔一定时间周期性执行。

这两个方法并不存在于 JavaScript 的规范中。但是大多数运行环境都有内置的定时器,而且也提供了这两个方法的实现。目前来讲,所有浏览器,包括 Node.js 都支持这两个方法。

JavaScript 事件系统

· 阅读需 21 分钟
Kimi Gao
Fullstack & AI

事件系统概述

基础概念

JavaScript 和 HTML 之间的交互是通过事件来实现的。事件,就是文档或浏览器窗口之间发生的一些交互瞬间。可以使用侦听器(或处理程序)来监听事件,以便事情发生时执行相应的代码。

一个完整的事件系统,通常存在以下三个角色:

  • 事件对象,用于储存事件的状态。
  • 事件源对象,当前事件在操作的对象,如元素节点,文档对象,window 对象,XMLHttpRequest 对象等。
  • 事件监听函数,当一个事件源生成一个事件对象时,它会调用相应的回调函数进行操作。

通俗点讲,事件源对象相当于”当事人“,事件监听函数相当于”监护人“,事件对象相当于”事故详情“。一个事件可以理解为,当事人出了点事,至于什么事情(被打了,还是被抢了)都记录在事故详情里,监护人根据事故详情得做出点反应(回调函数)。

JavaScript 节点增删改查

· 阅读需 19 分钟
Kimi Gao
Fullstack & AI

查找节点

前面四个方法除了定义在 document 对象上,还定义在 Element 上,即在元素节点上也可以调用。

querySelector()

document.querySelector 方法接受一个 CSS 选择器作为参数,返回匹配该选择器的元素节点。如果有多个节点满足匹配条件,则返回第一个匹配的节点。如果没有发现匹配的节点,则返回null

let el1 = document.querySelector('.myclass');
let el2 = document.querySelector('#myParent > [ng-click]');

Since HTML5 it’s been valid to start an HTML element ID with a number. For example <div id="10">. From an HTML perspective, that’s fine.

CSS 文档流

· 阅读需 16 分钟
Kimi Gao
Fullstack & AI

流 Flow

流实际上是 CSS 中的一种基本的定位和布局机制,流和现实世界的水流有异曲同工的表现。CSS 世界的“流”似乎就是按照现实世界的“水流”创造的。

CSS 世界构建的基石是 HTML,而 HTML 最具代表的两个基石 <div><span> 正好是 CSS 世界中 block-level 和 inline-level 的代表,它们对应的正是图中的盛水容器中的水和木头。

CSS 盒模型

· 阅读需 11 分钟
Kimi Gao
Fullstack & AI

display

levelboxdisplayformatting context
block-levelblock boxblockBFC
list-item boxlist-item
table boxtable
flex boxflex
grid boxgrid
inline-levelatomic inline-level boxinline-block, inline-table, inline-flex, inline-gridBFC/IFC(透明)
inline boxinlineIFC
CSS 对其归属说得比较模糊,毕竟在 CSS 诞生前 table 就存在了。可以简单理解为(特殊的)block-leveltable-row-group (tbody), table-header-group (thead), table-footer-group (tfoot), table-row (tr), table-column-group (colgroup), table-column (col), table-cell (td, th),table-caption (caption)TFC(CSS2.2), 在 CSS2.1 中是 BFC,还没有 TFC 的概念
othersnone, initial, inherit, unset