2014年12月

Javascript 访问器属性

这个和构造函数的意思有点像,但功能又不同,他可以让两个属性建立关联,通过修改一个属性来改变另一个属性。

var book = {
    _year:2004,
    edition: 1
};

Object.defineProperty(book, "year", {
    get: function() {
        return this._year;
    },
    set: function(newValue) {
        if (newValue > 2004) {
            this._year += newValue;
            this.edition += newValue - 2004;
        }
    }
});

book.year = 2006;
console.log(book.edition);

半年来的话,修改_year,输出值改变的只有year,但通过set,在修改year时edition也同时改变了。

杀死Nginx相关进程后重启解决办法

杀掉了进程之后就会导致没法再用restart命令重新启动,还是因为Node.js提示端口被用掉了然后就很无奈的在网上找了一篇杀死端口的教程结果杀错了。。。。

找到nginx.conf的路径,比如/etc/nginx/nginx.conf,那么就运行一下

nginx -c /etc/nginx/nginx.conf

OK了。

Ubuntu 提示您可能需要运行apt-get update解决方案

sudo apt-get update,会提示如下警告:

W: Duplicate sources.list entry http://archive.canonical.com/ubuntu/ precise/partner amd64 Packages (/var/lib/apt/lists/archive.canonical.com_ubuntu_dists_precise_partner_binary-amd64_Packages)
W: Duplicate sources.list entry http://archive.canonical.com/ubuntu/ precise/partner i386 Packages (/var/lib/apt/lists/archive.canonical.com_ubuntu_dists_precise_partner_binary-i386_Packages)
W: 您可能需要运行 apt-get update 来解决这些问题

解决方法:

进入/etc/apt/目录,将该目录下sources.list.d/及里面的内容全部删除,运行一下命令:

sudo rm -r /etc/apt/sources.list.d/

然后重新运行:sudo apt-get update

Form:http://hi.baidu.com/whugong8811wei/blog/item/e3bc6a1964e875398718bfe8.html

Jade 相关教程索引

http://www.lellansin.com/jade-%E6%A8%A1%E6%9D%BF%E5%BC%95%E6%93%8E%E4%BD%BF%E7%94%A8.html
http://www.cnblogs.com/fullhouse/archive/2011/07/18/2109945.html
http://blog.csdn.net/clh604/article/details/8491077
https://cnodejs.org/topic/5368adc5cf738dd6090060f2
http://www.cnblogs.com/fullhouse/archive/2011/07/18/2109945.html
http://www.w3cplus.com/html/jade.html

最后官网:http://jade-lang.com/

暂时Mark一下,期待之后的笔记吧

10个不可忽视的CSS代码片段

1、垂直对齐

在使用CSS的时候,你可能会出现疑问,我如何在容器中将文本或元素垂直对齐。现在使用CSS3 Transforms,我们可以更有效解决这问题,如下:

.verticalcenter{
position: relative;
top: 50%;
-webkit-transform: translateY(-50%);
-o-transform: translateY(-50%);
transform: translateY(-50%);
}

使用这个技术,文本、段落等都可以垂直对齐,CSS3 Transform 支持Chrome 4, Opera 10, Safari 3, Firefox 3, Internet Explorer 9。

- 阅读剩余部分 -

jQuery与DOM对象的互相转换

jQuery方法提供两种方法将一个jQuery对象转换为DOM对象
比如

var $cr = $('#cr');
var cr = $cr[0];
// var cr = $cr.get(0);

这两种方法都能把jQuery对象转换成DOM对象

而把DOM对象转换成jQuery对象只要用$()把DOM对象包起来。

比如

var cr = document.getElementById('cr');
var $r = $(cr);

之所以对这个转换有着需求,是因为DOM对象才能使用DOM中的方法,jQuery对象不可以使用DOM中的方法。

jQuery noConflict初识

导读:
w3school noConflict
jQuery API中文文档 noConflict

noConflict方法可以处理一些标记占用的冲突问题(这是目前我觉得的实用的用途)

$.noConflict()可以移交$的控制权,而如果是$.noConflict(true),那么jQuery和$都会消失,重新赋值如:
var $ = window.$.noConflict(true), jQuery = $

这样就能避免冲突在局部使用需要使用的jQuery版本啦。

Javascript ~function的实用性

javascript中 如果希望程序可以直接实行,而不是进行定义,可以再function前面加上~或者其他运算符,这样就能直接执行了。

这样做的优点是可以起到闭包的效果(作用域限定)

用法示例:

~function() {
   var i = 0;
   console.log(i);
}();

就本身而言,console.log不会直接执行,而 如果想要执行,i则会变成全局变量,经过~function之后,i在运行完函数之后就会被销毁了www