avatar
fireworks99
keep hungry keep foolish
From jQuery to MVVM & virtual DOM

MVVM模式是因何而生的?Virtual DOM是什么?

Read more -->
关于浏览器渲染网页的细节

一个网站通常遇到的问题有:资源加载缓慢、首次渲染时等待不重要文件的下载、无样式内容的闪烁等等。为了避免这些问题,我们需要了解浏览器渲染一个典型网页的生命周期。

Read more -->
bilibiliClickProgressBar development process

bilibiliClickProgressBar 开发过程

1.创建右键菜单

background.js中,当扩展(Extension)首次安装、升级,或chrome升级时,创建右键菜单。

chrome.runtime.onInstalled.addListener(() => {
  chrome.contextMenus.create({
    "id": "addTimeTag",
    "title": "添加时间标签",
    "contexts": ["page"],
    "documentUrlPatterns": ["*://*.bilibili.com/*"]
  });
});
Read more -->
My way to upload my project to github

Description

Upload my project to github

Read more -->
Recursive least square

给定一组样本点:

求拟合函数 使得 取最小值。

Read more -->
Browser's render engine and block

一、浏览器渲染引擎

主要模块

  • 一个渲染引擎主要包括:HTML解析器,CSS解析器,javascript引擎,布局layout模块,绘图模块

    • HTML解析器:解释HTML文档的解析器,主要作用是将HTML文本解释成DOM树。
    • CSS解析器:它的作用是为DOM中的各个元素对象计算出样式信息,为布局提供基础设施
    • Javascript引擎:使用Javascript代码可以修改网页的内容,也能修改css的信息,javascript引擎能够解释javascript代码,并通过DOM接口和CSS树接口来修改网页内容和样式信息,从而改变渲染的结果。
    • 布局(layout):在DOM创建之后,Webkit需要将其中的元素对象同样式信息结合起来,计算他们的大小位置等布局信息,形成一个能表达这所有信息的内部表示模型
    • 绘图模块(paint):使用图形库将布局计算后的各个网页的节点绘制成图像结果
Read more -->
Browser's function and components

一.浏览器应该有的功能

网络

​ 浏览器通过网络模块来下载各式各样的资源,例如html文本;javascript代码;样式表;图片;音视频文件等。
​ 网络部分本质上十分重要,因为它耗时长,而且需要安全访问互联网上的资源。

Read more -->
overflow meet flex

Description

如果将某个盒子设为伸缩盒(display: flex;),要注意子元素及其后代元素是否有white-space样式修饰,它会影响flex,使其失效,甚至使子元素溢出父元素。

Read more -->
Git

Description

Learn about git(VCS)

Read more -->
Wireshark capture Ethernet message

Description

用Wireshark捕捉以太网报文并分析其结构

Read more -->
Site by Baole Zhao | Powered by Hexo | theme PreciousJoy