2.1 使用 $() 方法
$() 方法是在 DOM 中使用过于频繁的 document.getElementById() 方法的一个便利的简写,就像这个 DOM 方法一样,这个方法返回参数传入的 id 的那个元素。比起 DOM 中的方法,这个更胜一筹。你可以传入多个 id 作为参数然后 $() 返回一个带有所有要求的元素的一个 Array 对象。
<HTML >
<HEAD >
<TITLE > Test Page </ TITLE >
<script src= "prototype1.4.js" ></ script >
<script >
function test1(){
var d=$('myDiv' );
alert(d.innerHTML);
}
function test2(){
var divs=$('myDiv' ,'myOtherDiv' );
for(i=0;i<divs.length;i++){
alert(divs[i].innerHTML);
}
}</ script >
</ HEAD >
< BODY >
< div id= "myDiv" >
<p>This is a paragraph</p>
</ div >
< div id= "myOtherDiv" >
<p>This is another paragraph</p>
</ div >
< input type= "button" value=Test1 onclick= "test1();" ><br> < input type= "button" value=Test2 onclick= "test2();" ><br>
</ BODY >
</ HTML >
另外一个好处是,这个函数能传入用 string 表示的对象 ID ,也可以传入对象本身,这样,在建立其它能传两种类型的参数的函数时非常有用。
2..2 使用 $F() 函数
$F() 函数是另一个大收欢迎的“快捷键”,它能用于返回任何表单输入控件的值,比如 text box,drop-down list 。这个方法也能用元素 id 或元素本身做为参数。
<script >
function test3(){
alert($F('userName' ));
}
</ script >
<inputtype= "text" id= "userName" value= "Joe Doe" ><br >
<inputtype= "button" value=Test3onclick= "test3();" ><br >
2.3 使用 $A() 函数
$A() 函数能把它接收到的单个的参数转换成一个 Array 对象。
这个方法,结合被本类库扩展了的 Array 类,能方便的把任何的可枚举列表转换成或拷贝到一个 Array 对象。一个推荐的用法就是把 DOM Node Lists 转换成一个普通的 Array 对象,从而更有效率的进行遍历,请看下面的例子。
<script >
function showOptions(){
var someNodeList=$('lstEmployees' ).getElementsByTagName('option' );
var nodes=$A(someNodeList);
nodes.each(function (node){
alert(node.nodeName+': ' +node.innerHTML);
});
}
</ script >
<selectid= "lstEmployees" size= "10" >
<optionvalue= "5" >Buchanan,Steven</option >
<optionvalue= "8" >Callahan,Laura</option >
<optionvalue= "1" >Davolio,Nancy</option >
</ select >
<inputtype= "button" value= "Show the options" onclick= "showOptions();" >
2.4 使用 $H() 函数
$H() 函数把一些对象转换成一个可枚举的和联合数组类似的 Hash 对象。
<script>
function testHash()
{
//let's create the object
var a={
first:10,second:20,third:30
};
//now transform it into a hash
var h=$H(a);
alert(h.toQueryString());
//displays: first=10&second=20&third=30
}
</script>
2.5 使用 $R() 函数
$R() 是 new ObjectRange(lowBound,upperBound,excludeBounds) 的缩写。
跳到 ObjectRange 类文档可以看到一个关于此类的完整描述 . 此时,我们还是先来看一个例子以展示这个缩写能代替哪些方法吧。其它相关的一些知识可 以在 Enumerable 对象文档中找到。
<script>
function demoDollar_R(){
var range=$R(10,20,false );
range.each(function (value,index){
alert(value);
});
}
</script>
<input type= "button" value= "Sample Count" onclick= "demoDollar_R();" >
2.6 使用 Try.these() 函数
Try.these() 方法使得实现当你想调用不同的方法直到其中的一个成功正常的这种需求变得非常容易, 他把一系列的方法作为参数并且按顺序的一个一个的执行这些方法直到其中的一个成功执行,返回成功执行的那个方法的返回值。
在下面的例子中, xmlNode.text 在一些浏览器中好用,但是 xmlNode.textContent 在另一些浏览器中正常工作。 使用 Try.these()
方法我们可以得到正常工作的那个方法的返回值。
<script>
function getXmlNodeValue(xmlNode){
return Try.these(function (){
return xmlNode.text;
},function (){
return xmlNode.textContent;
));
}
</script>
分享到:
相关推荐
Prototype框架为DOM(Document Object Model)操作提供了便利的方法。例如,`Element`对象包含了对HTML元素的各种操作,如`$(selector)`用于选取DOM元素,`$$`则用于选取多个匹配CSS选择器的元素。此外,`Element....
- **$()方法**:这是Prototype中最常用的快捷方式,用于获取DOM元素。它等同于document.getElementById(),但更加灵活,可以接受多个ID作为参数,一次性返回所有匹配元素的数组。例如: ```javascript var ...
**Ajax 常用框架集** Ajax(Asynchronous JavaScript and XML)是一种在无需重新加载整个网页的情况下,能够更新部分网页的技术。它通过在后台与服务器进行少量数据交换,使网页实现异步更新。Ajax框架的出现,使得...
本资源包集合了JavaScript中的几个常用框架的API文档,对于开发者来说是一份宝贵的参考资料。 1. **jQuery**: jQuery是一款轻量级、高性能的JavaScript库,它的核心理念是"Write Less, Do More"。jQuery简化了...
Prototype中的美元符号`$`是一个非常常用的快捷方法,它在不同的上下文中有不同的含义。下面我们将详细探讨Prototype框架中`$`、`$$`、`$A`、`$F`、`$H`以及`$R`这些函数的用法。 1. **`$()`**:在Prototype中,`$...
本压缩包集合了四个常用的JavaScript框架——JQuery、Prototype、Javascript(可能是指JavaScript基础文档)和Ext的中文帮助文档,对于web前台开发人员来说,无疑是一份宝贵的资源。 首先,我们来详细了解这些框架...
此外,还有 `Function.prototype.curry` 方法,用于预设部分参数并返回一个新的函数,这些都是函数式编程的常用特性。 6. **数组操作**: Prototype 对Array对象进行了扩展,提供了如 `Array.invoke`、`Array....
总的来说,Prototype是一个强大的JavaScript库,它简化了DOM操作,增强了AJAX功能,并提供了许多实用的工具和方法。通过深入研究"Prototype1.5中文手册"并实践其中的示例,开发者可以大大提高JavaScript编程的效率,...
基于Prototype框架制作的导航菜单,类似FLASH动画一样,在老外网站经常见得到。本类菜单其实就像是一个TAB选项卡一样,只不过带有动画切换效果,用部分资源图片和CSS的配合实现了好看的圆角,由Prototype完成动画...
**jQuery框架** jQuery是一款强大的JavaScript库,它极大地简化了JavaScript编程,使得网页动态化和交互变得更加容易。jQuery的核心特性包括高效的选择器引擎、DOM操作、事件处理、动画效果以及Ajax交互。以下是...
Spring MVC接收到请求,根据配置找到对应的处理器方法,该方法会调用Hibernate的查询功能从数据库获取匹配数据;处理完成后,Spring将结果包装成HTTP响应返回给前端,Prototype接收到响应后,更新提示区域的显示内容...
- `@Scope`:定义Bean的作用域,如单例(`singleton`)或原型(`prototype`)。 - `@Lazy`:标记Bean为懒加载,意味着只有在首次请求时才会初始化。 - `@PostConstruct`和`@PreDestroy`:分别标记初始化方法和销毁...
本文将深入探讨Ajax的常用框架及其API,包括DWR (Direct Web Remoting),jQuery,Ext JS,MooTools和Prototype,以及Scriptaculous。 1. **DWR**:DWR是一款开源Java库,它允许JavaScript与服务器端的Java对象进行...
Prototype是一个广泛使用的JavaScript框架,它为JavaScript开发提供了许多实用的功能,增强了原生JavaScript对象,并简化了DOM操作。下面我们将详细探讨Prototype库的核心概念、功能以及在实际开发中的应用。 ### 1...
Prototype框架简介 Prototype是一款功能强大的JavaScript框架,它不仅可以用作主JavaScript库,还能作为其他库的基础。该框架的一个关键特性是它能够扩展DOM元素,通过向元素添加新方法来简化跨浏览器编码的过程。...