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