- 博客(25)
- 资源 (118)
- 收藏
- 关注
IE6/7/IE8(Q) 中td的上下padding失效Bug
Bug重现代码如下<!DOCTYPE HTML><HTML> <HEAD> <meta charset="utf-8"> <title>IE6/7 and IE8(Q) 中td的上下padding失效</title> <style> table { border:1
2010-12-25 17:07:27 154
存储绑定/生存期
上一篇提到了 绑定 中的 类型绑定 。这篇说说存储绑定,程序设计语言的一种根本特征取决于这种语言的变量存储绑定的设计方式。变量名 与 存储单元 之间的关联的这个过程称为 存储绑定,或称为 存储空间分配。变量名与存储单元的解除绑定的这个过程称为 存储空间解除绑定。变量的 生存期 指该变量名被绑定于某一存储地址的时间。或者说一个变量名与某一存储地址从绑定到解除绑定的...
2010-12-25 11:05:34 97
类型绑定
在程序中引用一个变量前,变量名 必须被 绑定 到一种数据类型上。如 名字 abc 得知道它是语言中的基本类型(整型数字、浮点数字、布尔、字符串)或对象类型(内置类、自定义类)。根据 绑定时间 的早晚分为静态类型绑定和动态类型绑定。 一、静态类型绑定显示声明和隐式声明(JS等除外)都产生对类型的静态绑定。 二、动态类型绑定动态类型绑定时,变量的类型不是由声...
2010-12-19 09:01:17 115
变量的显示/隐式声明
显示声明 是程序中的一条说明语句,它列出一批变量名并指明这些变量的类型。如C、C++、Java中// 显示声明 变量count,类型为int,占用空间大小各语言可能有所不同int count; 又如JavaScript中// 显示声明 变量count,但不知其类型,也不知其占用空间大小var count; 隐式声明 指通过某种默认协定的方法将变量名与类型绑定...
2010-12-19 08:54:59 1289
绑定/约束
绑定/约束(binding)指两个东西之间的关联。如 名字 与它所代表的事物。又如属性与实体之间的关联,又或者符号与操作之间的关联。早期的书翻译成约束,后期的多数称绑定。后续都称绑定。绑定发生的时间称为 绑定时间(binding time)。绑定 和 绑定时间 是程序设计语言中了个非常重要的概念。绑定可以发生在语言设计时、语言实现时、编译时、连接时、载入时和运行时。...
2010-12-18 15:18:55 769
DOM3 textInput事件
DOM3中引入了文本事件,其中之一 textInput。当用户再可编辑区域输入字符时触发该事件。与keypress不同的是,该事件只会在用户输入可视字符时触发,而keypres事件则只要按下键即触发(如CapsLock,Backspace)。可看到textInput考虑的主要是字符,可以通过事件对象的data属性获取所输入字符。示例如下 <!DOCTYPE HTM...
2010-12-15 16:29:27 130
原创 读jq之八(原生事件对象的修复及扩充)
<br />由于各个浏览器中原生事件对象的 差异性 ,多数 JS库/框架 都或多或少的对原生事件对象进行了修复及扩充。<br /><br />比如,停止事件冒泡IE用 cancelBubble ,标准浏览器则用 stopPropagation 。<br /><br />获取事件源对象,IE用 srcElement,标准浏览器则用 target诸如此类。<br /><br />jQuery 对原生事件对象的修复和扩充主要使用 jQuery.Event 类和 jQuer
2010-12-15 14:43:00 457
原创 读jq之七(判断点击了鼠标哪个键)
<br />jQuery丢弃了标准的 button 属性采用which,这有点让人费解。<br /><br />which 是Firefox引入的,IE不支持。which的本意是获取键盘的键值(keyCode)。<br /><br />jQuery中的which即可以是键盘的键值,也可以是鼠标的键值。<br />即当判断用户按下键盘的哪个键时可以使用which,当判断用户按下鼠标的哪个键时也可以用which。它一举两用了。<br /><br />见jQuery1.4.4源码<br />
2010-12-15 14:41:00 862
原创 读jq之六(数据暂存)
<br />jq的$.data,$.removeData方法设计的很巧妙,为增强理解模仿其写了个。都三个方法set,get,remove都挂在data对象上。<br /> <br />(function (){ var stamp = '$' + (new Date).getTime(), uid = 0, cache = {}; var data = { set : function(el, name, data) { var id = el[ stamp ], thisCache;
2010-12-15 14:39:00 552
原创 读jq之五(jq对象的slice方法)
<br />这篇看看jq的slice方法,源码是jQuery1.4.2。先了解下first,last,eq方法。以下html片段<br /> <br /><div id="a">A</div><div id="b">B</div><div id="c">C</div><div id="d">D</div><br /> <br />$('div').first() 返回jq对象集合的第一个元素, 即Div[id=a],结构:{0:div,length:1,...};//...表示省略了其它属性
2010-12-15 14:37:00 1109
原创 读jq之四(实用方法)
<br />这篇看了jQuery.map,jQuery().map,jQuery.grep,jQuery.merge。<br /> <br />1,jQuery.map<br />该方法是挂在functoin jQuery上静态方法,通过jQuery.extend({...})方式扩展的。作用是数组(伪数组)每个元素上运行一个函数,返回新修改的数组。<br />见:http://api.jquery.com/jQuery.map/<br /> <br />2,jQuery().map<br />该方法是jq
2010-12-15 14:36:00 484
原创 读jq之三(优雅的迭代)
<br />上篇读到了jquery库如何通过其中的jQuery.extend及jQuery.fn.extend去扩展自身的。这篇将分析下jQuery.each及jQuery().each方法。看看他们如何与jQuery.extend一起扩展jquery库。查看源码,我们发现里面有10多处用到$.each及$().each。<br /> <br />jQuery1.4 已发布,后续将已1.4版本作为示例。部分源码如下:<br /> <br />jQuery.fn = jQuery.prototyp
2010-12-15 14:35:00 618
原创 读jq之二(两种扩展)
<br />上一篇分析了jquery对象的组成,这次来分析下jquery的extend方法。部分如下:<br /> <br />jQuery.extend = jQuery.fn.extend = function() { ...};<br /> <br />我们可以用$.extend去扩展自定义的对象,如:<br /> <br />var myself = {name:jack};$.extend(myself, {setName:function)(n){this.name=n;}
2010-12-15 14:32:00 715
克隆JS对象的三个实用方法
方法一function clone(obj){ var o; switch(typeof obj){ case 'undefined': break; case 'string' : o = obj + '';break; case 'number' : o = obj - 0;break; case 'boolean' : o = obj;break; ...
2010-12-14 17:58:19 112
元素内联事件的真相
引子是JS1群中的Mead Lai提出的问题,如下<!DOCTYPE HTML><html><head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>Test case</
2010-12-13 18:04:08 157
变量的六个属性
变量是机器存储单元在语言中的抽象。它是编程语言最重要的概念之一。变量有6个属性(或者说从6个方面去描述变量)名字/别名地址/左值值/右值类型作用域生存期/生命期 1,名字/别名名字的概念在 名字/标识符 已经提到。当多个名字访问的都是同一个存储地址时(或者说多个名字都 绑定/约束于同一个存储...
2010-12-11 12:47:47 237
名字/标识符
名字 是指代表某些东西的有助于记忆的字符序列。名字可以使我们采用符号形式标识符引用变量、常量、子程序、形参而不用采用更低级的如地址一类的概念。从低级语言到高级语言的发展过程中,名字 是抽象出来的最重要的概念之一。 名字不只是用于变量,也常用于常量、子程序、形参等。标识符一词常常与名字概念互换使用。 一、名字的长度早期的程序设计主要用来解决数学问题,数学中常用的就是单个字...
2010-12-11 08:51:58 723
读Ext之九(事件管理)
Ext的事件管理非常强大。主要定义在Ext.EventManager对象(单例模式)中。该对象有以下方法addListener removeListenerremoveAllgetListenerspurgeElement_unloadonDocumentReadyonunstoppedMouseDownEventon / un 是 addListe...
2010-12-08 08:39:39 162
书写css伪类时冒号前或后多个空格导致该规则失效
相信多数开发者不会多个空格。是偶然发现的,网上多数css格式化将压缩后的css格式化后会发生这个情况。搜“css格式化”,以下网站http://www.jb51.net/tools/cssyasuo.shtmlhttp://www.ttmouse.com/geshi.html格式化后会多出个空格,多出空格后样式规则失效了。 <!DOCTYPE html>...
2010-12-07 09:15:47 139
JavaScript模态对话框类
模态对话框类/** * JavaScript DodelDialog v0.1 * * * new DodelDialog({ * caption 标题 '对话框标题'(默认) * template 主体内容 ''(默认) * dialogCls 对话框className 'md-dialo...
2010-12-06 09:02:53 82
各浏览器中中关键字作为对象属性的差异
最近记录了各种各样的标识符 “同名” 现象,有 Javascript中同名标识符优先级 和 表单中有name为action的元素时,取form的属性action杯具了。最近又碰到一个,后台同事返回了如下的JSON结构:{default:{name:'jack'}}在IE6/7/8中出错了,调试了很久才发现原因。细心的朋友获取已经发现了,default不是JS的关键字吗?...
2010-12-06 08:35:21 98
读jq之八(原生事件对象的修复及扩充)
由于各个浏览器中原生事件对象的 差异性 ,多数 JS库/框架 都或多或少的对原生事件对象进行了修复及扩充。比如,停止事件冒泡IE用 cancelBubble ,标准浏览器则用 stopPropagation 。获取事件源对象,IE用 srcElement,标准浏览器则用 target诸如此类。jQuery 对原生事件对象的修复和扩充主要使用 jQuery.Ev...
2010-12-04 09:13:01 102
读jq之七(判断点击了鼠标哪个键)
jQuery丢弃了标准的 button 属性采用which,这有点让人费解。which 是Firefox引入的,IE不支持。which的本意是获取键盘的键值(keyCode)。jQuery中的which即可以是键盘的键值,也可以是鼠标的键值。即当判断用户按下键盘的哪个键时可以使用which,当判断用户按下鼠标的哪个键时也可以用which。它一举两用了。见jQuery1.4.4源...
2010-12-03 18:31:24 104
disabled属性及对应css选择器的在各浏览器中的一些差异
disabled属性只应用在以下元素BUTTON, INPUT, OPTGROUP, OPTION, SELECT, TEXTAREA见 HTML 4.01 的 属性表多数时候我们会遵循标准,不再其它元素上使用该属性。但部分人没有注意disabled的应用规则,误认为所有元素都可以使用该属性。并且在IE浏览器上生效,得到了证明。比如:<label disabled...
2010-12-03 14:22:27 376
表单中有name为action的元素时,取form的属性action杯具了
示例如下<!DOCTYPE html><html> <head> <title>表单中有name为action的元素时,取form的属性action杯具了</title> <meta http-equiv="Content-Type" content="text/html;charset=gbk&q
2010-12-01 11:35:55 172
ECMAScript 6入门(样章)
2014-09-23
Rework:每个程序员都应该读的一本书
2014-04-11
Mastering Web Application Development with AngularJS
2013-11-13
结构程序设计
2013-11-05
JavaScript异步编程:设计快速响应的网络应用
2013-06-06
JavaScript面向对象编程指南
2013-04-25
编写可维护的JavaScript
2013-04-25
UNIX编程艺术
2012-08-18
基于MVC的JavaScript Web富应用开发
2012-05-21
Essential JavaScript Design Patterns
2012-04-10
Getting Started with GEO.CouchDB and Node.js
2012-03-07
JavaScript Web Application
2012-02-26
JavaScript Patterns (JavaScript模式)
2011-12-30
HTML5 and CSS3: Develop with Tomorrow's Standards Today
2011-12-08
重构-改善既有代码的设计
2011-01-25
HTML5揭秘 英文版
2011-01-12
HTML 5用户指南 英文版
2011-01-12
jQuery 1.4.2 直观速查表
2010-09-10
HttpWatch.Professional.v5.2.16
2010-09-02
httpwatchpro-v4.0.54
2010-09-02
High.Performance.JavaScript
2010-05-13
JavaScript语言精粹
2010-04-26
Javascript语言精髓与编程实践
2010-04-19
我也能做CTO之程序员职业规划
2010-04-19
EMCA262 V5
2010-04-02
周爱民Qomo框架源码
2009-12-10
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人