prototype.js开发笔记(四)

2.27. Form 对象

这个对象提供操作表单和他们的输入项目的功能性方法。

 

Table 2.29. Form 对象

方法 类别 参数 描述
serialize(form) instance form: 表单元素或id 返回url参数格式的项目名和值的列表, 如'field1=value1&field2=value2&field3=value3'。
getElements(form) instance form: 表单元素或id 返回包含所有在表单中输入项目的 Array 对象。
getInputs(form [, typeName [, name]]) instance form: 表单元素或id, typeName: 输入项目的类型, name: 输入项目的名称 返回一个 Array 包含所有在表单中的 <input> 元素。 另外, 这个列表可以对元素的类型或名字属性进行过滤。
disable(form) instance form: 表单元素或id 使表单中的所有输入项目无效。
enable(form) instance form: 表单元素或id 使表单中的所有输入项目有效。
focusFirstElement(form) instance form: 表单元素或id 激活第一个表单中可视的,有效的输入项目。
reset(form) instance form: 表单元素或id 重置表单。和调用表单对象的 reset() 方法一样。

 

2.28. Form.Element 对象

这个对象提供表单对象中的可视和非可视元素的功能性方法。

 

Table 2.30. Form.Element 对象

方法 类别 参数 描述
serialize(element) instance element: 表单元素或id 返回元素的 名称=值 对, 如 'elementName=elementValue'。
getValue(element) instance element: 表单元素或id 返回元素的值。

 

2.29. Form.Element.Serializers 对象

这个对象提供了内部使用的用来协助解析出表单元素的当前值功能性方法。

 

Table 2.31. Form.Element.Serializers 对象

方法 类别 参数 描述
inputSelector(element) instance element: 一个带有checked属性的表单元素或id, 如 radio 或 checkbox。 返回带有元素名称和值的 Array , 如 ['elementName', 'elementValue']
textarea(element) instance element: 一个带有value属性的表单元素或id, 如 textbox, button 或 password 项目。 返回带有元素名称和值的 Array , 如 ['elementName', 'elementValue']
select(element) instance element: 一个<select> 元素对象或id。 返回带有元素名称和所有被选择的选项的值或文本的 Array , 如 ['elementName', 'selOpt1 selOpt4 selOpt9']

2.30. Abstract.TimedObserver 类

这个类是用于其它监听一个元素的值(或者任何类中涉及的属性)变化的类的基类,这个类像一个抽象类一样被使用。

子类可以被创建来监听如输入项目值,或style属性,或表格的行数,或者其他任何对跟踪变化相关的东西。

子类必须实现这个方法来决定什么才是被监听的元素的当前值。

 

Table 2.32. Abstract.TimedObserver 类

方法 类别 参数 描述
[ctor](element, frequency, callback) constructor element: 元素对象或id, frequency: 以秒为单位的间隔, callback: 当元素改变的时候调用的方法。 创建一个监听元素的对象。
registerCallback() instance (none) 这个方法通常不会被外部调用。 被这个对象自己调用来开始监听那个元素。
onTimerEvent() instance (none) 这个方法通常不会被外部调用。 被这个对象自己调用来周期性的检查那个元素。

 

Table 2.33. Abstract.TimedObserver 类

属性 类型 描述
element Object 被监听的元素对象。
frequency Number 每次检查中的以秒为单位的时间间隔。
callback Function(Object, String) 只要元素改变这个方法就会被调用。 会接收到元素对象和新值作为参数。
lastValue String 元素被核实的最后一个值。

 

2.31. Form.Element.Observer 类

继承自 Abstract.TimedObserver 

Abstract.TimedObserver 的一个实现类用来监听表单输入项目的值的变化。当你想监听一个没有带报告值变化事件的元素的时候使用这个类。否则的话使用 Form.Element.EventObserver 类代替。

 

Table 2.34. Form.Element.Observer 类

方法 类别 参数 描述
[ctor](element, frequency, callback) constructor element: 元素对象或id, frequency: 以秒为单位的间隔, callback: 当元素改变的时候调用的方法。 继承自 Abstract.TimedObserver. 创建一个监听元素值属性的对象。
getValue() instance (none) 返回元素的值。

 

2.32. Form.Observer 类

继承自 Abstract.TimedObserver 

Abstract.TimedObserver 的一个实现类用来监听表单中任何数据项的值的变化。当你想监听一个没有带报告值变化事件的元素的时候使用这个类。 否则的话使用类 Form.EventObserver 代替。

 

Table 2.35. Form.Observer 类

方法 类别 参数 描述
[ctor](form, frequency, callback) constructor form: 表单对象或id, 继承自 Abstract.TimedObserver. 创建一个监听表单变化的对象。
getValue() instance (none) 返回所有表单数据的一系列值。

 

2.33. Abstract.EventObserver 类

这个类被用作其他一些类的基类,这些类具有在一个元素的值改变事件发生的时候执行一个回调方法这样的功能。

类 Abstract.EventObserver 的多个对象可以绑定到一个元素上,不是一个帮其他的擦出了,而是按照他们付给元素的顺序执行这些回调方法。

单选按钮和复选框的触发事件是 onclick ,而文本框和下拉列表框/下拉列表框的是 onchange 。

子类必须实现这个方法来决定什么才是被监听的元素的当前值。

 

Table 2.36. Abstract.EventObserver 类

方法 类别 参数 描述
[ctor](element, callback) constructor element: 元素对象或id, callback: 当事件发生的时候调用的方法。 创建监听元素的对象。
registerCallback() instance (none) 这个方法通常不会被外部调用。 被对象调用来把自己绑定到元素的事件上。
registerFormCallbacks() instance (none) 这个方法通常不会被外部调用。 被对象调用来把自己绑定到表单中的每一个数据项元素的事件上。
onElementEvent() instance (none) 这个方法通常不会被外部调用。 将被绑定到元素的事件上。

 

Table 2.37. Abstract.EventObserver 类

属性 类型 描述
element Object 被监听的元素对象。
callback Function(Object, String) 只要元素改变就调用的方法。会接收到元素对象和新值作为参数。
lastValue String 元素被核实的最后一个值。

 

2.34. Form.Element.EventObserver 类

继承自 Abstract.EventObserver 

Abstract.EventObserver 的一个实现类,它在监测到表单中数据项元素的值改变的相应事件时候执行一个回调方法。 如果元素没有任何报告变化的事件,那么你可以使用 Form.Element.Observer 类代替。

 

Table 2.38. Form.Element.EventObserver 类

方法 类别 参数 描述
[ctor](element, callback) constructor element: 元素对象或id, callback: 当事件发生的时候调用的方法。 继承自 Abstract.EventObserver。 创建一个监听元素值属性的对象。
getValue() instance (none) 返回元素的值。

 

2.35. Form.EventObserver 类

继承自 Abstract.EventObserver 

Abstract.EventObserver 的一个实现类,监听表单对象中包含的任何对象的任何变化,用元素的事件检测值的变化。如果元素没有任何报告变化的事件, 那么你可以使用 Form.Observer 类代替。

 

Table 2.39. Form.Element.EventObserver 类

方法 类别 参数 描述
[ctor](form, callback) constructor form: 元素对象或id, callback: 当表单中任何数据项改变的时候调用的方法 继承自 Abstract.EventObserver。 创建一个监听元素值属性的对象。
getValue() instance (none) 返回所有表单数据的一系列值。

 

2.36. Position 对象 (预备文档)

这个对象提供许多和元素位置相关的方法。

 

Table 2.40. Position 对象 (预备文档)

方法 类别 参数 描述
prepare() instance (none) 调整 deltaX 和 deltaY 属性来协调在滚动位置中的变化。 记得在页面滚动之后的任何调用的withinIncludingScrolloffset 之前调用这个方法。
realOffset(element) instance element: 对象或id 返回这个元素的正确滚动偏差的 Array 对象, 包括所有影响元素的滚动偏差。结果数组类似 [total_scroll_left, total_scroll_top]
cumulativeOffset(element) instance element: 对象或id 回这个元素的正确滚动偏差的 Array 对象, 包含任何被放置的父元素强加偏差。结果数组类似 [total_offset_left, total_offset_top]
within(element, x, y) instance element: 对象, x 和 y: 一个点的坐标 测试给定的点的坐标是否在给定的元素的外部矩形范围之内。
withinIncludingScrolloffsets(element, x, y) instance element: object, x and y: coordinates of a point  
overlap(mode, element) instance mode'vertical' 或 'horizontal'element: 对象 在调用这个方法之前需要调用within() 。这个方法返回0.0到1.0之间的数字,来表示坐标在元素重叠的分数。 举个例子,如果元素是一个边长是100px的正方形的DIV,并且位于(300, 300), 然后 within(divSquare, 330, 330);overlap('vertical', divSquare); 会返回 0.10,意思是那个点位于DIV顶部边框以下 10% (30px) 的位置上。
clone(source, target) instance source: 元素对象或 id, target: 元素对象或id 改变目标元素的大小尺寸和位置与源元素的相同。
posted @ 2007-02-08 10:20    阅读(292)  评论(0)    收藏  举报