GFW 蛋疼的把 https://registry.npmjs.org 给墙了,导致无法通过 NPM 安装模块。
可以运行如下两句命令设置代理,注意代理的地址改为自己实际可用的代理。
npm config set proxy=http://127.0.0.1:8087 npm config set registry=http://registry.npmjs.org
Posted on 2012-04-26
GFW 蛋疼的把 https://registry.npmjs.org 给墙了,导致无法通过 NPM 安装模块。
可以运行如下两句命令设置代理,注意代理的地址改为自己实际可用的代理。
npm config set proxy=http://127.0.0.1:8087 npm config set registry=http://registry.npmjs.org
Posted on 2012-04-26
群里同学问了这个有意思的问题,写了段简单的代码,基本思路是在一个高度为 auto 的容器中逐个插入字符,每次插入后检查容器高度,如果高度增加了,说明产生了换行。
(function ($) {
var global = this;
global.lineBreakDetection = function (text, width) {
var firstInLine = [],
height = 0,
$div;
$div = $('<div/>').css('width', width).appendTo(global.document.body);
$.each(text, function (i, char) {
$div.text($div.text() + char);
if ($div.height() > height) {
firstInLine.push(i);
height = $div.height();
}
});
$div.remove();
return firstInLine;
};
}.call(this, jQuery));这段代码在实际使用中还有三个问题要解决:
标签:JavaScript
Posted on 2012-03-08
(function ($) {
var $body = $('html, body');
$.scrollTo = function (selector, offset) {
var top = $.isNumeric(selector) ? selector : $(selector).offset().top + (offset || 0);
$body.animate({'scrollTop':top});
};
}(jQuery));这是一个让页面快速滚动到指定元素位置或指定高度的插件,用法如下
jQuery(function($){
var $content = $('#content');
$.scrollTo($content);
$('a.go-footer').on('click', function() {
$.scrollTo('#footer', -20);
return false;
});
$('a.back-to-top').on('click', function() {
$.scrollTo(0);
return false;
});
});标签:jQuery
Posted on 2012-03-01
如果你还不知道 SASS 和 COMPASS 是什么,可以参看 http://sass-lang.com 和 http://compass-style.org,近期可能会更新一篇介绍性的入门教程,但是本文只是安装使用教程,不包含介绍信息。
最近开始读jQuery源码,并打算将所思所学记录下来。阅读顺序是从易到难,先读简单的,把event和core这样的大块头留到最后。
顺带一提,源码下载地址为:https://github.com/jquery/jquery/downloads。
今天先分析最外层的匿名函数,最外层的匿名函数代码在 intro.js 和 outro.js 这两个文件内,一个头一个尾。代码如下:
(function( window, undefined ) {
//jQuery 代码....
})( window );
可以看到 window 对象被作为参数传入,这种方式可以减少解析变量 window 时查询作用域链的深度,有助于提升性能。很多 jQuery 插件也是以这种方式把 jQuery 对象传入闭包内部的。
还有一个声明后未被传值的参数 undefined。由于 undefined 被设计成一个全局变量而不是关键字,所以 undefined 是可以被赋值的,为避免使用被污染的全局变量 undefined 而导致 bug,所以在函数作用域里产生一个名为 undefined 的未被赋值的参数(未被赋值的变量其值为 undefined 的默认值)正好不过。
下一篇内容为 data 模块。
标签:jQuery
Posted on 2011-11-30