子匠_Zijor | 前端开发 / 程序媛 / 潜心学艺。

【小技巧】解决iPhone中video视频的行内播放

如果我们希望在一个<div>内播放<video>视频,我们可能会这么写:

// CSS: 
video {width: 100%; height: auto;}

// HTML: 
<div style="width: 500px; height: 300px;">
    <video src="test.mp4"
+ 阅读更多

北国的秋天是五颜六色的 – 20161204

今天多云转晴。原计划着今天去取景的,不料早晨阴天 + 浓雾霾,压根不适合拍照呀。准备午睡的时候,一缕阳光洒入,突然放晴了,看着渐渐消散的霾,我决定穿好衣服拎起摄影包就走!…

+ 阅读更多

美丽的风景在路上(杭州,秋)-20161203

难得这一周杭州的天气都非常撩人,阳光明媚甚是不错,暖暖的很是舒服。趁着阳光正好,于是背上相机去公司,沿途取景。

摄于2016年12月3日清晨。阳光明媚,无雾霾,温度十分宜人。
+ 阅读更多

2016年11月份月度小结

psb1.jpg-1096.6kB

这个十一月,大概可以用一句话来概括我想得最多的问题:

冥冥中,这是我唯一要走的路。

这个十一月,跟往常都不太一样 —— 我独自背井离乡来到了千里之外的远方求抱大腿。这是一段几乎全新的生活。但是我没有害怕,也没有觉得有任何的委屈或不适。见识到了传说中的“养猪场”,伙食好得是没话说的,走了几个地方,也认识了几个值得交心的新朋友。团队的小伙伴们都很幽默很Nice,有聊不完的话题,每次总能被逗乐。我已经习惯了这边的生活。…

+ 阅读更多

摄影:杭州九溪-水美叶红-2016/11/19

我的微单终于修好了。好喜欢Sony,售后维修服务好得没话说的,大写的赞。终于又可以外拍啦~

摄于2016年11月19日中午。阳光明媚,雾霾天,温度十分宜人。

+ 阅读更多

原生Node.js实现静态资源服务器

事起缘由:上个月面试的时候,面试官问我如何写静态文件服务器。额,这个,这个不是用Express里面的static方法一行命令就能搞掂的咩,要压缩的话一个Compress中间件就搞掂了呀?。。如果非要自己写的话,不就是createServer,监听一下路由,再读取文件输出文本流到客户端不就OK了吗?。。。。咦。。。稍等!稍等!!好像哪里不对,。。。读文件也要分文件类型来输出呀,image和视频文件就不能用文本格式输出,要考虑MIME呀;直接读文件的话,肯定还会涉及到安全性问题;读取I/O操作成本辣么高,不考虑缓存和Gzip压缩会死人的呀;如果是大文件的话,可能还要考虑断点续传耶;卧槽,如果要用于商业项目的话日志也是要考虑的呀,容错什么的都不能少耶。。。。。。。。我的天呀,静态文件服务器并没有我一开始想的那么简单,一头脑风暴下来就发现这东西注意的地方很多,看来确实值得研究和实操一遍呀。…

+ 阅读更多

AngularJS依赖注入原理分析

正在施工 ing,先占个坑,慢慢填。。。。。…

+ 阅读更多

【实战】AngularJS实现拖拽组件

正在施工 ing,先占个坑,慢慢填。。。。。…

+ 阅读更多

JavaScript中对象的深拷贝

在JavaScript中,对对象进行拷贝的场景比较常见。但是简单的复制语句只能对对象进行浅拷贝,即复制的是一份引用,而不是它所引用的对象。而更多的时候,我们希望对对象进行深拷贝,避免原始对象被无意修改。…

+ 阅读更多

随拍:深圳湾公园-2016/10/28

摄于2016年10月28日早上。阳光明媚,蓝天白云,烈日灼灼。

器材:我的500万像素渣小辣椒手机。( ╯□╰ )。。。

min-nice-QQ图片20161028110120.jpg-262.9kB

min-nice-QQ图片20161028105222.jpg-266.2kB

+ 阅读更多

JavaScript中的函数节流

一. 背景

在一些场景下,函数有可能会被频繁地调用,而这些函数本身占用的内存或计算较大时,就可能造成大的性能问题。譬如以下场景:

  • window.onresize事件。window.onresize事件在浏览器窗口大小改变时被触发,而且浏览器每改变1px,该事件就被触发一次,触发的频率非常的高。如果在window.onresize事件中涉及到一些DOM节点相关的操作时,而DOM操作往往是非常耗内存的,这时浏览器有可能出现卡顿甚至崩溃的情况。
+ 阅读更多

学习笔记:JavaScript 函数柯里化

一. 函数柯里化的定义

函数柯里化,Function currying,又称部分求值,指的是逐步传参,逐步求解的过程。

二. 函数柯里化的实现

一个Curry函数首先会接受一些参数,接受参数之后,该函数并不会立即求值,而是继续返回另一个函数,刚才传入的参数在函数形成的闭包中被保存起来。待到函数被真正需要求值的时候,之前传入的所有参数都会被一次性用于求值。…

+ 阅读更多

设计模式笔记(五):JavaScript中的装饰者模式

一. 装饰者模式的定义

装饰者模式的定义:动态地给一个对象添加额外的职责,而不会影响从这个类派生的其他对象。

二. 装饰者模式的实现

装饰者模式能够在不改变对象自身的基础上,在程序运行期间给对象动态添加职责。…

+ 阅读更多

设计模式笔记(四):JavaScript中的中介者模式

一. 中介者模式的定义

中介者模式的定义:用一个中介对象来封装一系列的对象交互。中介者使各对象不需要显式地相互引用,从而使其耦合松散,而且可以独立地改变它们之间的交互。

+ 阅读更多

设计模式笔记(三):JavaScript中的代理模式

一. 代理模式的定义

代理模式的定义:为其他对象提供一种代理,以控制对着这个对象的访问。

在代理模式中,一个对象充当另一个对象的接口。

这种模式看起来像是额外的开销,但是出于性能因素的考虑却是非常有用的。代理充当了本体对象的守护对象,并且试图使本体对象做尽可能少的工作。…

+ 阅读更多

设计模式笔记(二):JavaScript中的策略模式

一. 策略模式的定义

策略模式的定义:定义了算法家族,分别封装起来,让它们之间可以相互替换。

策略模式的目的是想将算法的使用与实现分离开来。

二.

+ 阅读更多

设计模式笔记(一):JavaScript中的单例模式

单例模式是一种常见的模式,如果希望系统中一个类只有一个实例,那么单例模式是最好的解决方案。

一. 单例模式的定义

单例模式的定义:保证一个类仅有一个实例,并提供一个访问它的全局访问点。

+ 阅读更多

2016年10月份个人小结

min.jpg-49.6kB

备注:2016年10月15日上午,摄于雷峰塔顶,俯瞰西湖。恰逢烟雨迷蒙,犹如半城烟沙。

10月份总体是正能量满满的。

一. 工作

9月底辞职,所以十一长假过后就要开始正式找工作了。整理了基础知识和项目,折腾了一份看起来排版还不错的简历。就开始海投了。一直想去北上杭发展,更青睐杭州。…

+ 阅读更多