Posted on 2007-01-10 10:29
路易 阅读(563)
评论(0) 编辑 收藏 所属分类:
JavaScript
今天学习的是3个方法:$A() $H() $R()
<
HTML
>
<
HEAD
>
<
script
src
="prototype.js"
></
script
>
<
script
>
function
showOptions()
{
var
someNodeList
=
$('lstEmployee').getElementsByTagName('option');
//
首先通过$()方法得到select元素,然后通过getElementsByTagName得到元素里面的子元素(就这么解释吧,反正给自己看)
var
nodes
=
$A(someNodeList);
//
$A()函数能把它接收到的单个的参数转换成一个Array对象
//
这个方法,结合被本类库扩展了的Array类,能方便的把任何可枚举列表转换成或拷贝到一个Array对象。一个推荐的方法就是把DOM Node Lists转换成一个普通的Array对象,从而更有效率的进行遍历
nodes.each(
function
(node){
//
遍历
alert(node.nodeName
+
':'
+
node.innerHTML);
});
}
function
testHash()
{
//
create the object
var
a
=
{first:
20
,second:
20
,third:
30
};
var
h
=
$H(a);
//
$H()函数把一些对象转换成一个可以枚举的和联合数组类似的Hash对象
alert(h.toQueryString());
//
输出first:20&second:20&third:30
}
function
demoDollar_R()
{
//
$R()函数是new ObjectRange(lowBound,upperBound,excludeBounds)的缩写
var
range
=
$R(
10
,
20
,
false
);
//
这里的参数false/true代表了是否显示上限(也就是这里的20,false是显示)
range.each(
function
(value,index){
alert(value);
});
//
方法无非就是依次的在弹出对话框中输出10,11,12,13,14,15,16,17,18,19,20
}
</
script
>
</
HEAD
>
<
BODY
>
<
select
id
="lstEmployee"
size
="10"
>
<
option
value
="5"
>
Buchanan,Steven
</
option
>
/
<!--
这里的option子元素将会被方法showOptions()遍历输出
-->
<
option
value
="8"
>
Callahan,Laura
</
option
>
<
option
value
="1"
>
Davolio,Nancy
</
option
>
</
select
><
br
>
<
input
type
="button"
value
="show the options"
onclick
="showOptions();"
>
测试$A()函数
<
br
>
数组中的值是: first:20,second:20,third:30
<
br
>
<
input
type
="button"
value
="TestHash"
onclick
="testHash();"
>
测试$H()函数
<
br
>
<
input
type
="button"
value
="Sample Count"
onclick
="demoDollar_R();"
>
测试$R()函数
</
BODY
>
</
HTML
>