javascript
文章平均质量分 52
kyfxbl
这个作者很懒,什么都没留下…
展开
-
jQuery1.7.1 API手册
本文基于jQuery1.7.1版本,是对官方API的整理和总结,完整的官方API见http://api.jquery.com/browser/0、总述jQuery框架提供了很多方法,但大致上可以分为3大类:获取jQuery对象的方法、在jQuery对象间跳转的方法,以及获取jQuery对象后调用的方法其中第一步是怎样获取jQuery对象。大致来说,是通过最核心的$()方法,将页面上的元原创 2013-09-24 10:59:53 · 978 阅读 · 0 评论 -
javascript原型链体会
总结javascript原型链的概念1. 每个javascript对象都有一个“原型对象”,这个对象在不同的解释器下的实现不同。比如在firefox下,每个对象都有一个隐藏的__proto__属性,这个属性就是“原型对象”的引用。以下代码在firefox下可以跑,在ie下则不行var base = { name : "kyfxbl"};var obj = { __pr原创 2013-09-24 10:32:19 · 637 阅读 · 0 评论 -
javascript_core阅读笔记(二)
本系列内容是阅读javascript_core的笔记,原文见http://abruzzi.iteye.com/ 7.关于===操作符如果操作数的类型不同,则不进行值的判断,直接返回false如果操作数的类型相同,分下列情况来判断:都是数字的情况,如果值相同,则两者等同,否则不等同都是字符串的情况,如果串的值不等,则不等同,否则等同都是布尔值,且值均为true/false,则等同,否则原创 2013-09-24 10:31:53 · 617 阅读 · 0 评论 -
javascript_core阅读笔记(一)
本系列内容是阅读javascript_core的笔记,原文见http://abruzzi.iteye.com/1.javascript中的数据类型分2种:基本类型和对象类型。其中对象类型包括:Object, Array, Function;基本类型包括:String, Number, boolean2.所有非空对象,在boolean环境下,都会转换成trueif(""){原创 2013-09-24 10:31:48 · 706 阅读 · 0 评论 -
犀牛书第五版读书笔记——Chapter 17. Events and Event Handling(第一部分)
1.用户对页面做操作会触发事件,浏览器负责捕获到事件,javascript代码则响应事件。2.同样的操作可能会触发不同类型的事件,这取决于上下文。比如当用户点击一个submit按钮,触发的是onsubmit事件;用户点击reset按钮,触发的则是onreset事件3.有两类事件。第一类事件(low-level)只描述用户的动作,没有别的含义,这里事件包括onclick等。第二类事件(hig原创 2013-09-24 10:31:12 · 711 阅读 · 0 评论 -
犀牛书第五版读书笔记——Chapter 16. Cascading Style Sheets and Dynamic HTML
1.浏览器内置有默认的样式表,用户可以用自己的设置来改变默认值。这也是为什么页面在不同的浏览器中视觉效果不同的原因2.通过一个ElementNode的style属性,可以编辑该元素的一些CSS属性。不同的浏览器对该属性的实现是不同的:var s = document.i1.style;var count = 0;for ( var prop in s) { count+原创 2013-09-24 10:31:07 · 725 阅读 · 0 评论 -
犀牛书第五版读书笔记——Chapter 15. Scripting Documents(第五部分)
37.document.createElement()和document.createTextNode()方法可以创建新的元素,以及新的文本38.Node.appendChild(),Node.insertBefore(),Node.replaceChild()方法,可以将新创建的元素,加入到文档中39.总结前2条,就是创建新节点(包括元素节点和文本节点),都是通过调用document上的原创 2013-09-24 10:31:02 · 754 阅读 · 0 评论 -
犀牛书第五版读书笔记——Chapter 15. Scripting Documents(第三部分)
19.HTMLElement元素定义了id,style,title,lang,dir,className属性。这些属性对应到html标签的id,style,title,lang,dir,class这些attribute(特性)。这些特性是所有HTML标签都支持的20.之所以为HTML标签定义相应的HTMLElement接口,主要是为了方便。这些接口通常只是增加一组对应HTML attribut原创 2013-09-24 10:30:51 · 677 阅读 · 0 评论 -
犀牛书第五版读书笔记——Chapter 15. Scripting Documents(第一部分)
1.document.write()方法只能在html文档解析过程中调用,如果在解析完成之后才调用,则会创建一个新的文档,并将旧文档覆盖。因此,有时候可以用如下代码创建新窗口function hello() { var w = window.open(); // Create a new window with no content var原创 2013-09-24 10:30:41 · 774 阅读 · 0 评论 -
犀牛书第五版读书笔记——Chapter 14. Scripting Browser Windows(第三部分)
21.可以给window和frame指定name属性,这样做的目的是在和标签中,可以指定浏览器在哪个窗口显示链接,或者提交表单Chapter 1, Introduction22.给frame指定了name属性以后,会在window中创建同名的属性,这个属性指向该frameparent.table_of_contentsparent.frames[1]可以看到,这样获取f原创 2013-09-24 10:30:36 · 757 阅读 · 0 评论 -
犀牛书第五版读书笔记——Chapter 14. Scripting Browser Windows(第二部分)
10.window.close()方法可以关闭窗口,但是只能关闭自己创建的窗口11.window.moveTo(),moveBy(),resizeTo(),resizeBy()方法可以移动窗口位置,或者改变窗口大小,不过出于安全考虑,浏览器对这些方法都做了一些限制12.浏览器提供3种方法进行屏幕交互,分别是alert(),confirm(),prompt()13.window.stat原创 2013-09-24 10:30:31 · 725 阅读 · 0 评论 -
犀牛书第五版读书笔记——Chapter 14. Scripting Browser Windows(第一部分)
1.客户端javascript提供了setTimeout()和setInterval()这2个方法来支持java中的TimerTask2.Location是地址对象,可以通过window.location访问到,其中包含protocol,href等属性3.通过给location赋值,可以使浏览器载入另一个地址,默认是相对路径4.location.replace(url),这个方法可以载原创 2013-09-24 10:30:26 · 850 阅读 · 0 评论 -
犀牛书第五版读书笔记——Chapter 13. JavaScript in Web Browsers(第二部分)
12.当有多个onload事件处理函数注册,浏览器会调用所有的处理函数,但是调用的顺序则无从保证13.文档解析已经完成之后绝对不能调用document.write()方法。这样做的话,将创建一个新的document,并覆盖掉现有的document,用户甚至没有机会看到现有的document14.javascript是单线程的。因此两个事件处理函数绝对不会同时执行15.单线程也带来一些问原创 2013-09-24 10:30:21 · 759 阅读 · 0 评论 -
犀牛书第五版读书笔记——Chapter 10. Modules and Namespaces
1.如果要编写能在多个模块间共享的javascript代码,要遵守的最重要的规则就是避免定义全局变量。一旦定义了全局变量,就有这些全局变量被其他代码无意修改的风险。由此引发的BUG是很难定位的2.一个模块不该定义超过一个symbol到全局命名空间中。另外有2条建议:如果向全局命名空间中添加了symbol,其文档应该清楚地描述出这模块是什么。(比如jQuery)symbol的名称和引入symbo原创 2013-09-24 10:30:11 · 710 阅读 · 0 评论 -
犀牛书第五版读书笔记——Chapter 8. Functions
1.function定义时指定的参数数量可以和实际调用时传递的参数数量不同,没有传递的参数设为undefined,多余的参数被忽略,但是可以通过arguments属性来访问,这是call object的属性2.没有return语句的函数,以及直接return的函数,返回值都是undefined3.arugments有一个callee属性,它指向function自身4.javascrip原创 2013-09-24 10:29:55 · 862 阅读 · 0 评论 -
犀牛书第五版读书笔记——Chapter 6. Statements
1.javascript中的switch比java中的好用,不仅可以用来检查number,也可以直接用来匹配string2.for/in语句for (var prop in object) { alert(prop);}3.with的作用是把对象临时地置于scope chain的第一位,在执行完毕后则清除。with语句的性能比较差,如果没有充分的理由,最好少用原创 2013-09-24 10:29:45 · 669 阅读 · 0 评论 -
犀牛书第五版读书笔记——Chapter 5. Expressions and Operators
1.经javascript解释器能计算出一个有效值的语句,即javascript表达式,比如17,"hello",i,i+3等,都是表达式2.操作符==在可能的情况下,会自动进行类型转换。===则不会。。这章内容太少了,实在没啥好记的了原创 2013-09-24 10:29:40 · 668 阅读 · 0 评论 -
犀牛书第五版读书笔记——Chapter 4. Variables
1.javascript中的变量范围只有2种:全局变量和函数局部变量,不存在block scope。2.变量有原始类型和引用类型的区别。原始类型的赋值是值复制,引用类型的赋值是引用复制。3.javascript中也有垃圾回收机制var s = "hello"; // Allocate memory for a stringvar u = s.toUpperCas原创 2013-09-24 10:29:35 · 921 阅读 · 0 评论 -
犀牛书第五版读书笔记——Chapter 3. Datatypes and Values
1.javascript中的数据类型分为基本数据类型和引用数据类型2.基本数据类型包括number,string,boolean,null,undefined3.引用数据类型包括object,function,array4.有一些特殊的number,包括NaN,Infinity,Nunber.MAX_VALUE等,它们typeof的值都是number,它们的constructor是fu原创 2013-09-24 10:29:30 · 690 阅读 · 0 评论 -
犀牛书第五版读书笔记——Chapter 2. Lexical Structure
1.字符集是Unicode,所以某种程度上是可以用中文编程的,虽然没有人这么做2.区分大小写,但其主要所处的环境HTML,则是不区分大小写的3.语句最后的;是可选的,但是一般来说,强烈建议写上;4.注解写法和java完全一样5.最重要的字面量是[]和{},前者是数组,后者是对象6.标识符的规则和java也一样。另外有一个不成文的规定:通常用__name__这种形式,表示对象的私原创 2013-09-24 10:29:25 · 804 阅读 · 0 评论 -
对象属性的查找顺序
Therefore, property inheritance occurs only when you read property values, not when you write them. If you set the property p in an object o that inherits that property from its prototype, what happen原创 2013-09-24 10:29:15 · 751 阅读 · 0 评论 -
javascript_core阅读笔记(五)
本系列内容是阅读javascript_core的笔记,原文见http://abruzzi.iteye.com/ 22. javascript支持构造器形式的对象创建。构造器会自动为新创建的对象设置原型对象,此原型对象通过构造器的prototype属性来引用。function Task(id) { this.id = id;}Task.prototype.status =原创 2013-09-24 10:32:14 · 713 阅读 · 0 评论 -
javascript_core阅读笔记(四)
本系列内容是阅读javascript_core的笔记,原文见http://abruzzi.iteye.com/ 18. javascript中的引用始终指向最终的对象,而并非引用本身。var obj = {};// 空对象var ref = obj;// 引用obj.name = "objectA";alert(ref.name);// "objectA"obj = ["原创 2013-09-24 10:32:08 · 647 阅读 · 0 评论 -
javascript_core阅读笔记(三)
本系列内容是阅读javascript_core的笔记,原文见http://abruzzi.iteye.com/ 13.javascript中的函数对参数的处理十分灵活,可以传递任意数量的参数给一个functionfunction sum() { var result = 0; for ( var i = 0; i < arguments.length; i++) {原创 2013-09-24 10:31:58 · 698 阅读 · 0 评论 -
犀牛书第五版读书笔记——Chapter 9. Classes, Constructors, and Prototypes(第二部分)
8.当在Complex对象上查找属性时,首先在对象本身上查找。如果属性没有找到,就查找Complex.prototype对象。最后,如果仍然没有找到,则在Object.prototype对象上查找9.在需要的时候,用以下方式可以实现从任何对象继承,而不只是从Object类继承PositionedRectangle.prototype = new Rectangle( );delete原创 2013-09-24 10:30:06 · 673 阅读 · 0 评论 -
prototype方式继承
javascript的继承和java不同,不是基于class实现,而是基于prototype实现的。function Animal(nAge){ this.age = nAge;}Animal.prototype.eat = function(){ // eat something};function Cat(sName){ this.name原创 2013-09-24 10:29:20 · 668 阅读 · 0 评论 -
execution context、scope chain、call object等等
重读犀牛书,很多以前没概念的东西,都有点感觉了。重读书真是一种乐趣呀。这次看到execution context、scope chain、call object的概念,感觉还是理解得不太透彻,不过先简要总结一下。1.每个函数执行的时候,都会有一个execution context,即执行上下文。不在function内的代码(姑且称作全局代码)执行时,有个global上下文;function原创 2013-09-24 10:28:49 · 843 阅读 · 0 评论 -
this in javascript
在javascript中,this表示当前上下文,即调用者的引用。因此this的值并非由函数如何被声明而确定,而是由函数如何被调用而确定。-----------------------------1月27日补充-------------------------------------javascript里的this就是被调用对象的引用。形象的说,就是那"."之前的那个对象的引用。 jav原创 2013-09-24 10:28:39 · 628 阅读 · 0 评论 -
转:javascript中的==和===运算符
本文转载自abruzzi的博客,原文地址:作者:abruzzi 作者联系方式:juntao.qiu@gmail.com 作者Blog:http://abruzzi.iteye.com 运算符==读作“相等”,而运算符===则读作“等同”。这两种运算符操作都是在JavaScript代码中经常见到的,但是意义则不完全相同,简而言之,相等操作符会对两边的操作数做类型转换,而等同则不会。p原创 2013-09-24 10:28:34 · 685 阅读 · 0 评论 -
转:javascript的构造函数
在Javascript中,用new关键字创建对象是执行了下面三个步骤:1.创建一个新的普通对象2.将方法对象的prototype属性的所有属性复制到新的普通对象中去3.以新的普通对象作为上下文来执行方法对象function Car(nPrice){ this.price = nPrice;}Car.prototype.doors = 4;var car原创 2013-09-24 10:28:28 · 625 阅读 · 0 评论 -
用javascript结合struts2实现国际化的一种比较戳的方法
今天看到国际化的一种实现,比较戳,不过也算一种方法,贴出来记录一下XXXConstants = {version:"1.0"};XXXConstants.COMMON_SERVER_ERROR = '';XXXConstants.COMMON_CONFIRM_TITLE = '';这个其实是一个js文件,但是它的后缀是.jsp(奇葩),目的是用struts2的ta原创 2013-09-24 10:28:23 · 929 阅读 · 0 评论 -
犀牛书第五版读书笔记——Chapter 15. Scripting Documents(第四部分)
27.Node的childNodes属性的值是一个NodeList Object,该对象的行为类似于Node Object的数组28.操作DOM时有一个基本的规则:在文档树加载解析完成之前,不能对其进行遍历或者操作。SAX不是这样的29.Node接口除了定义了childNodes属性外,还定义了其他几个方便的属性,包括firstChild,lastChild,nextSibling,pre原创 2013-09-24 10:30:57 · 962 阅读 · 0 评论 -
犀牛书第五版读书笔记——Chapter 15. Scripting Documents(第二部分)
9.W3C DOM标准扩展并取代了遗留的DOM标准10.W3C DOM把文档看做树形结构11.每个Node Object都有nodeType属性,该属性表示该Node的节点类型。如果其nodeType的值等于Node.ELEMENT_NODE,就表示该节点是一个元素节点,也就是说它是一个Element Object,那么就可以使用Element接口定义的所有属性和方法12.DOM树的根原创 2013-09-24 10:30:46 · 693 阅读 · 0 评论 -
犀牛书第五版读书笔记——Chapter 13. JavaScript in Web Browsers(第一部分)
1.在客户端javascript中,Document对象表示HTML文档,Window对象表示显示文档的浏览器窗口2.Window是客户端中的global object,非常重要。包括alert()等方法,document等属性,都是window对象的属性3.Window对象有2个属性指向自身,分别是window和self,用任何一个都可以获取window对象4.在一个window中声原创 2013-09-24 10:30:16 · 779 阅读 · 0 评论 -
犀牛书第五版读书笔记——Chapter 9. Classes, Constructors, and Prototypes(第一部分)
1.结合使用new操作符和function(),会创建一个新的对象。完整的过程是这样的:首先new出一个object。然后将function.prototype的所有属性映射到新object上。(注意,不是复制,而是建立了一个映射关系)最后以新object为对象调用function2.要注意,object本身并没有prototype属性,有prototype属性的是function。但是当fu原创 2013-09-24 10:30:00 · 718 阅读 · 0 评论 -
犀牛书第五版读书笔记——Chapter 7. Objects and Arrays
1.javascript中的对象只是键值对而已,创建object有2种方法,一种是var o = {};另一种是var o = new Object();2.访问对象属性有2种办法,一种是object.prop,另一种是object[prop],通常使用前者,但是在对象属性名在运行时才能确定的情况,只能使用后者3.用push()和pop()方法,可以使array具有First In Las原创 2013-09-24 10:29:50 · 681 阅读 · 0 评论 -
关于prototype
犀牛书9.2写道:After creating the empty object, new sets the prototype of that object. The prototype of an object is the value of the prototype property of its constructor function. All functions have a pr原创 2013-09-24 10:29:09 · 616 阅读 · 0 评论 -
new到底new出了什么
犀牛书9.1写道:The new operator must be followed by a function invocation. It creates a new object, with no properties and then invokes the function, passing the new object as the value of the this keywor原创 2013-09-24 10:29:04 · 710 阅读 · 0 评论 -
闭包是怎么形成的
犀牛书第8章第8节,详细说明了闭包的形成过程。a function is executed in the scope in which it was defined.When a function is invoked, a call object is created for it and placed on the scope chain. When the function exits原创 2013-09-24 10:28:54 · 1263 阅读 · 0 评论 -
javascript中的按值操作和按引用操作
犀牛书第5版第3章最后一节,谈的是by value versus by reference。这一节总结得很好,对java、ruby等其他语言道理也是一样的,有空可以重读。In javascript, as in all programming languages, you can manipulate a data value in three important ways. First, y原创 2013-09-24 10:28:44 · 724 阅读 · 0 评论