代码改变世界

为什么watch机制不是银弹?

2014-11-17 01:32 by Justany_WhiteSnow, 679 阅读, 0 推荐, 收藏, 编辑
摘要:几乎所有构建系统都选择使用watch机制来解决开发过程中需要反复生成构建后文件的问题,但在watch机制下,长期以来我们必须忍受修改完代码,保存完代码必须喝口茶才能刷新看看效果的问题。在这里我们尝试探讨为什么watch不是银弹,并尝试寻找一种更好的方案来解决这个问题。watch基于的事实当一个文件修... 阅读全文

我们的前端模版引擎更新总结

2014-09-28 23:12 by Justany_WhiteSnow, 1676 阅读, 0 推荐, 收藏, 编辑
摘要:最近花了些时间更新了下我们的模版引擎。就像构建工具一样,模版引擎也基本是大家玩烂的内容,什么运行速度啊,编译速度啊,大家也谈了很多。让我们讲些不同的东东^ ^原文地址:https://app.yinxiang.com/shard/s30/sh/83bcf109-aee4-44df-ab01-4990... 阅读全文

小矮人Javascript模块加载器

2014-02-05 14:54 by Justany_WhiteSnow, 1430 阅读, 0 推荐, 收藏, 编辑
摘要:https://github.com/miniflycn/webkit-dwarf短小精悍的webkit浏览器Javascript模块加载器Why我们有许多仅基于webkit浏览器开发的应用无论是使用requirejs还是seajs都需要先加载完模块加载器本身之后才能加载其他模块无论出于首屏优化需要,还是手机2G优化需要,我们都需要一个足够小的模块加载器内置CDN失败回源策略AMD & CMDrequire([module], callback);这是AMD规范中模块引用的经典方式。实际上CMD规范在异步引用上也与之类似。require.async([module], callback 阅读全文

Javascript模版引擎简介

2014-01-16 10:40 by Justany_WhiteSnow, 650 阅读, 0 推荐, 收藏, 编辑
摘要:回顾Micro-Templating出自John Resig 2008年的一片文章,以及其经典实现:// Simple JavaScript Templating// John Resig - http://ejohn.org/ - MIT Licensed(function(){ var cache = {}; this.tmpl = function tmpl(str, data){ // Figure out if we're getting a template, or if we need to // load the template - and be sure t... 阅读全文

bootstrap 3.0 LESS源代码浅析(二)

2013-11-21 19:57 by Justany_WhiteSnow, 2076 阅读, 0 推荐, 收藏, 编辑
摘要:border-radius是最常见的CSS3属性,但你知道他多少东西呢?比如:border-radius:2em;相当于什么?border-top-left-radius:2em;border-top-right-radius:2em;border-bottom-right-radius:2em;border-bottom-left-radius:2em;实际上,其首先都是水平方向(top or bottom)的弧度,然后才是垂直方向的弧度(left or right)。忘记在哪里的一道题目请用CSS实现如上图一样的椭圆,有兴趣的同学可以思考一下。回到Bootstrap 3.0OK,我们回到B 阅读全文

bootstrap 3.0 LESS源代码浅析(一)

2013-11-19 16:15 by Justany_WhiteSnow, 6064 阅读, 0 推荐, 收藏, 编辑
摘要:我一直以为Bootstrap的LESS源代码精髓在mixins.less,所以这个系列主要也是讲解mixins.less的。什么是mixins?混入,或者翻译成混合。官网的说法是:我们可以定义一些通用的属性集为一个 class,然后在另一个 class 中去调用这些属性。看起来非常难理解,没事,我们来看例子,比如有这样一个class:.bordered { border-top: dotted 1px black; border-bottom: solid 2px black;}那如果我们现在需要在其他 class 中引入那些通用的属性集,那么我们只需要在任何 class 中像下面... 阅读全文

你可能不知道的跨域解决方案

2013-11-18 19:34 by Justany_WhiteSnow, 2228 阅读, 0 推荐, 收藏, 编辑
摘要:出于浏览器的同源策略,我们经常会遇到浏览器跨域的问题。简单的说跨域基本解决方案是:GET请求用JSONP其他请求用同源iframe做代理JSONP的介绍很多,这里就不多说了。而同源iframe做代理主要是主窗口与iframe的通讯问题,因为这里也有同源策略。常见的方法是使用window.name或者通过url param来通讯。但这些方法都需要反复加载iframe来完成的,资源消耗较高,有没有更好的方案呢?window.postMessagewindow.postMessage最早由IE8引入,主要为了解决跨文档通讯问题,以下使其支持列表:FeatureChromeFirefox (Gecko 阅读全文

高级Javascript调试——console.table()

2013-11-18 11:58 by Justany_WhiteSnow, 12016 阅读, 12 推荐, 收藏, 编辑
摘要:原文:http://www.mariusschulz.com/2013/11/13/advanced-javascript-debugging-with-consoletable本文只是简单翻译,部分不重要部分略去,请原谅。通过console.log()打印数组试想一下,假如你创建了一个编程语言以及其文件后缀名列表:var languages = [ { name: "JavaScript", fileExtension: ".js" }, { name: "TypeScript", fileExtension: ".ts& 阅读全文

NodeJS的url验证库模块url-valid

2013-11-17 15:31 by Justany_WhiteSnow, 3888 阅读, 0 推荐, 收藏, 编辑
摘要:这是我10月份做的项目其中的一个部件,主要用于url检验的。我们知道Javascript做url检验,通常是使用正则表达式来判定,其格式是否正确,例如:/^https?:\/\//.test(url);当然还有更好的检测方法比如基于RFC 3986, RFC 3966, RFC 4694, RFC 4759, RFC 4904等标准的进行验证的valid-url库。不过个根据格式进行验证当然不能确定该url是否存在啦,所以就有了url-valid,我们基于HTTP请求进行验证。接口设计实际上我们只需要一个函数传入一个url地址,并回调返回该链接是否可用。但请求容易产生未知错误,所以我们在回调函 阅读全文

NodeJS的url信息截取模块url-extract

2013-09-12 22:49 by Justany_WhiteSnow, 3207 阅读, 0 推荐, 收藏, 编辑
摘要:上一篇文章,介绍了怎么利用NodeJS + PhantomJS进行截图,但由于对每次截图操作,都启用了一个PhantomJS进程,所以并发量上去后,效率堪忧,所以我么重写了所有代码,并将其独立成为一个模块,方便调用。 阅读全文
上一页 1 2 3 4 5 6 ··· 10 下一页