天方夜

不患人之不己知,患不知人也

  • Home
  • Archives
  • Tags
  • Categories
  • About

Attribute 与 Property

Posted on 2014-09-02   |   In 编程

DOM 元素中的 attribute 与 property 并不相同。attribute 通常翻译为“特性”,property 通常翻译为“属性”。其实它们是近义词,并不能根据特性、属性这两个词汇来区分 attribute 与 property。

  • 特性:某事物所特有的性质;特殊的品性、品质。
  • 属性:事物所具有的不可缺少的性质。

所以,attribute 与 property 都可以叫“特性”,也都可以叫“属性”。

区别

从 HTML 到 DOM 元素,一种是声明式的语言,一种是命令式语言。attribute 是直接收集 HTML 中的属性转为 js 对象,对象的 value 最接近原生态,也就是 HTML 标记里面的样子;property 也是转为 js 对象,但是转化的过程中会对 value 做一些处理,将 value 转为对 js 来说更有意义的值。

比如:

1
<input type="checkbox" checked="checked" />
1
2
elem.getAttribute("checked”) // “checked”,原生态的值
elem.checked // true,对 js 来说更有意义的值
Read more »

如何访问 Google

Posted on 2014-07-09   |   In 编程

1. 添加正确的 host

想方设法找到正确的 host:
https://git.oschina.net/kawaiiushio/misc/raw/master/hosts/pc/hosts

2. Chrome 中设置搜索引擎为使用 ncr

填入如下参数,并设为默认引擎:
https://www.google.com/#lr=lang_zh-CN&newwindow=1&q=%s

Read more »

想象力的边界:倪匡与古龙

Posted on 2014-05-28   |   In 杂文

前几天的一集《锵锵三人行》,谈马尔克斯,王蒙在谈写作时说「想象是非常困难的」。刚刚回想,我似乎明白了这句话的意思。

我看过的小说,以倪匡与古龙的居多,提到想象力,最容易联想到倪匡的卫斯理系列。但刚才想到的是,所谓马尔克斯的想象力,是指你想都不敢想的事情。换句话说,如果不看其作品,你永远想象不到类似的事情。

Read more »

如何减肥

Posted on 2014-05-24   |   In 杂文

关于减肥的理论各式各样,具体方法更是花样繁多。

关于肥胖,卫斯理小说里面有句话很是切中要害——「我认为变胖的唯一原因就是吃的太多」。变肥的原因找到了,减肥的方法也就不难推导——少吃!

减肥的人都能想到少吃,但是减肥成功者寥寥无几。由此又可推导出——做到少吃并不容易。一般人到此为止了,那么你永远无法减肥。应该再思考一下,为什么会这样?

Read more »

浮动元素与 BFC

Posted on 2014-02-24   |   In 编程

CSS 的默认以 document flow 方式渲染元素,而 float 与 postion 属性可以改变这种状况。

CSS 中 float 属性的本意是实现文本绕排图片,不过实际使用中 float 常常用来创建多栏布局。float 最常出现的问题是父元素不再包含它(float 之后不再属于 document flow)。

解决方法 1:

为父元素添加 overflow: hidden,它能可靠地迫使父元素包含其浮动的子元素。

1
2
3
4
<section>
<img src="images/tianfangye.png">
<div class="clear_me"></div>
</section>
1
2
3
4
5
6
7
section {
border:1px solid blue;
overflow: hidden;
}
img {
float: left;
}
Read more »

addEventListener 多重监听问题

Posted on 2014-02-17   |   In 编程

不会导致多重监听的情况

1
2
3
4
5
6
7
8
var listener = function(event) {
alert("JS");
};

document.body.addEventListener('click', listener);
document.body.addEventListener('click', listener);

// 每次点击只弹出一次

多次 add 同一个 function 是不会重复监听的。只要 listener 没有变,add 多少次也只相当于 add 一次。

删除 listener

1
document.body.removeEventListener('click', listener);

由于只有一个 listener,只要这样调用一次 removeEventListener 即可删除。

Read more »

理解 HTML5 语义化标签:div, section & article

Posted on 2014-01-26   |   In 编程

语义化标签·非语义化标签

标签名描述了标签内容,就是语义化标签(semantic elements);标签名对标签内容毫无描述,则是非语义化标签(non-semantic elements)。img、form 和 table 是语义化标签,div、span 则是非语义化标签。

使用语义化标签的好处

HTML5 中增加了一批语义化标签,说明开发者应当尽量写语义化的 HTML。另外,HTML 是声明式语言,语义化的标签名称,既是给人看的,也是给浏览器看的。

语义化标签,就像写明了“产品部”、“设计部”、“研发部”的门牌——不用打开门,只需要看看门牌,就能知道这个房间的作用。

非语义化标签,就像只写了号码的门牌——光看门牌,只能看到与房间作用无关的门牌号;必须开门看看,才能知道这个房间是干什么的。

Read more »

CodeTank Pistachio

Posted on 2014-01-05   |   In 编程
Read more »

JavaScript 函数对象的 prototype 属性

Posted on 2013-10-27   |   In 编程

JavaScript 中,函数就是函数对象,函数对象是对象的一种,它们有自己的属性并且可以被调用。函数对象都有一个 prototype 属性,这是一个对象。prototype 有一个 constructor 属性,它指向当前函数对象。

1
2
3
function func() {}

func.prototype.constructor; // function func() {}

如果人为改变函数对象的 prototype 属性,会有很多好玩的代码产生。例如:

1
2
3
4
5
function inherit(Child, Parent) {
var F = function() {};
F.prototype = Parent.prototype;
Child.prototype = new F();
}
Read more »

初读江户川乱步——《阴兽》

Posted on 2013-09-30   |   In 杂文

江户川乱步是日本推理文学之父,被日本推理作家尊为“鼻祖”。这个笔名是由 Edgar Allan Poe 的日文发音所取。青山刚昌组合了江户川乱步与道南·道尔这两个名字,化作《名侦探柯南》的主角江户川柯南之名;除主角外,毛利小五郎、少年侦探团、怪盗基德等人物的创作也是受江户川乱步作品的启发。

我看的第一篇作品是《阴兽》——江户川乱步的四部中篇之一。

Read more »
1234
天方夜

天方夜

天方夜的博客

36 posts
2 categories
70 tags
RSS
© 2022 天方夜
Powered by Hexo
Theme - NexT.Muse