InfoQ

News

Prototype 1.6 RC Includes DOM Builder and Event API Overhaul

Posted by Scott Delap on Aug 20, 2007 11:04 AM

Community
Java,
Ruby
Topics
Web Frameworks
Tags
AJAX,
Prototype
Earlier this month the Prototype team released the first RC of 1.6.0. This release contains a number of core API upgrades, bug fixes, and new features. Among the highlights:
  • 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
    • You can now access JSON response bodies as JavaScript objects
    • 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
  • Improved support for JavaScript 1.6 and WHATWG 1.0 standards

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.

No comments

Reply

Exclusive Content

Intentional Software - Democratizing Software Creation

Business users doing programming? Simonyi and Kolk presents how Intentional Software offers a radical new software approach that separates business knowledge from software engineering knowledge.

Getting Started with Grails

Jason Rudolph discusses Java/Grails integration, Grails plugins, creating a Grails sample application, Grails app structure, data querying and persistence, validation, controllers and tag libraries.

Creating Product Owner Success

The Scrum Product Owner role is powerful, valuable and challenging to implement. It brings healthier relationships between customers and developers, and competitive advantage - if you do it right.

Book Excerpt and Interview: Effective Java, Second Edition

Effective Java, Second Edition by Joshua Bloch is an updated version of the classic first edition, which won a 2001 Jolt Award. InfoQ asked Bloch questions about the areas that the new edition covers.

Tapestry for Nonbelievers

A new article by I. Drobiazko and R. Zubairov introduces v. 5 of the Apache Tapestry component-oriented web framework. The tutorial shows how to create a component and covers IoC in Tapestry and Ajax.

Pete Lacey on REST and Web Services

In this interview, Burton Group consultant Pete Lacey talks to Stefan Tilkov about his disillusionment with SOAP, his opinion on REST, and addresses some of the perceived shortcomings REST vs. WS-*.

Business Natural Languages Development in Ruby

Jay Fields presents his concept of Business Natural Languages - a type of Domain Specific Languages geared towards being readable by domain experts.

Distributed Version Control Systems: A Not-So-Quick Guide Through

Adoption and interest for Distributed Version Control Systems is constantly rising. We will introduce the concept of DVCS and have a look at 3 actors in the area: git, Mercurial and Bazaar.