Element.extend - Prototype JavaScript 框架

Xunxin Prototype API

extend

extend(element)

扩展 element,使其具有 Element.MethodsElement.Methods.Simulated 包含的所有方法。如果 element 具有 inputtextarea 或者 select 标签,扩展后也同时拥有 Form.Element.Methods 的方法,如果具有 form 标签,则拥有 Form.Methods 的方法。

这是一个充满魔力的方法!

通过 Prototype 定义的方法扩展一个元素,我们能够为语法添加一层糖衣,用我们所期望的方式编写代码。例如,在一个已扩展的元素上可以这么做:

element.update('hello world'); 

并且,因为大多数 Element 的方法都返回方法本身所应用到的元素,所以可以像链条一样一环扣一环的对方法进行调用:

element.update('hello world').addClassName('greeting');

注意,所有 Element 的方法返回的元素都已经被扩展(甚至包括类似 Element.siblings 这种返回元素数组的方法)。显然,Prototype 的王牌工具函数 $()$$() 也会对返回元素进行扩展。

如果你想更深入的了解 Prototype 是如何扩展 DOM 的,请参阅 这篇文章.