Prototype学习笔记(一)

在网新国际培训中心接受了两个半月之后,因为公司还没有安排,可能有一个月的休息时间,不想让自己就这么荒废掉,于是想到需要学点什么。

很快就把目标锁定到了当今比较流行的javascript框架prototype上,以后可能从事web方面的开发会比较多,因此有必要学习一种javascript框架,提高开发效率,而且也可以学习一些AJAX技术。至于为什么选择prototype也没什么好说的,因为自己别的框架也没用过,想说出个所以然也是不可能的,个人认为既然有这么一个框架,而且有人在用,那就说明了它有一定的价值,不管了,先学了再说。

我下载的是prototype1.6版的,包括一个.JS文件和一个.PDF的参考文档。主要学习资料就是这份PDF文档了。第一章没什么好看的,直接从第二章开始了。

Chapter 2 Utility Methods 第二章 工具方法

$:主要是根据ID获取HTML元素,也可以根据HTML元素获取HTML元素,后者没什么意思

eg:$(“errMsg”).innerHTML  += “<h1>Hello World</h1><br>”;

$$ :根据CSS规则查找元素集合,参数类似XPath,返回值是个HTML元素数组

eg:alert($$(‘.testclass’)[0].innerHTML);

$A :将一个可枚举的对象转换为Array对象

eg:var paras = $A(document.getElementsByTagName(‘p’));

$F :返回一个表单控件的值

eg:alert($F(‘toAlert’));

$H :返回某个object的Hash对象,这个还不清楚有什么用。

$R :创建一个ObjectRange对象

eg:$R(0, 10).include(10)返回true

$A($R(0, 5)).join(‘, ‘)返回0,1,2,3,4,5

$w :将一个字符串转换为数组,特别适合懒得写数组元素的人

eg:$w(‘apples bananas kiwis’)返回[‘apples’, ‘bananas’, ‘kiwis’]

$w(‘banana apple’).each(function(fruit) {

var message = ‘I love ‘ + fruit;

alert(message);

});

Try.these:试着执行多个方法,返回第一个能够成功执行的结果

eg:

getTransport: function() {

return Try.these(

function() { return new XMLHttpRequest() },

function() { return new ActiveXObject(‘Msxml2.XMLHTTP’) },

function() { return new ActiveXObject(‘Microsoft.XMLHTTP’) }

) || false;

}

第二章中讲到的这些工具都非常实用,以前写过javascript的人对下面这行代码一定都非常熟悉:

document.getElementById(‘helloDiv’);

而使用prototype框架之后,只需要写成:

$(‘helloDiv’);

就可以了,简单吧。

自己慢慢体会吧!



Jun04