Prototype 1.6 RC Includes DOM Builder and Event API Overhaul
- Event API Enhancements
- Event handlers registered with Event.observe or Element#observe are now automatically bound to the event's target element in all browsers.
- Event objects are now extended with a collection of instance methods.
- The event name and handler arguments to Event.stopObserving and Element#stopObserving are now optional,
- Prototype now has support for custom events.
- We've built in cross-browser support for the DOMContentLoaded event
- Function API Enhancements
- Function#wrap distills the essence of aspect-oriented programming into a single method
- Function#curry allows for partial function application
- Function#methodize encapsulates the pattern of converting a function's first argument into its this value.
- Function#argumentNames returns an array of strings representing the function's named arguments
- Function#delay provides a convenient wrapper around window.setTimeout
- Class API Enhancements
- Class.create now supports three alternate forms of invocation
- The new Class.extend method works like Object.extend
- If you're overriding a method from a parent class, you can now access the superclass method by naming the overriding function's first argument $super.
- Classes now have constructor, superclass, and subclasses properties
- Ajax API Enhancements
- The transport object itself is now wrapped by Prototype
- DOM API Enhancements
- Prototype now boasts a new cross-browser DOM Builder
- We've deprecated the Insertion object and Position namespace
- Element#update and Element#replace also both now accept DOM elements
- Element#setStyle now accepts either a string of CSS rules
As noted in the release bullet points above, the Event API has been overhauled. From the press release "one of our worst APIs has become one of our best, overnight". Version 1.6 also includes a new DOM Builder.
Delivering Performance Under Schedule and Resource Pressure: Lessons Learned at Google and Microsoft
Ivan Filho Mar 06, 2014