Close
Loading, please wait...
This announcement will hide in 60 seconds

YUI Bubbling Core

2007-11-25
RSS Channel bookmark this link
Bubbling CORE

The first thing you need to do before trying to use this utility, is to read this article in the Yahoo! User Interface Blog "The Bubbling Technique & Custom Event, YUI's Secret Weapon", to learn the principles of this pattern.

The Bubbling CORE Object require the inclusion of the YUI scripts: yahoo, dom, event or utilities. Once the necessary scripts are included in the pages, and the inclusion of the bubbling.js script, all the default behaviors layers (navigate, property, key, repaint, rollover and rollout) will be initialized automatically, using the default configuration, which means that you can subscribe behaviors immediately after the inclusion of the bubbling core. Each behaviors layer have an Custon Event, which means that you can add as many listeners as you need, see the list below:

  • navigate
    This layer will catch the click, and action over links.
  • property
    This layer will catch the right click, and control click in mac and opera.
  • key
    This layer will catch the keyboard events.
  • repaint
    This special layer will catch the resize window, font resize, and scrolling events. (the last two events require extra initialization, see the documentation)
  • rollover
    This layer will catch the mouse movement, and will be fired on mouseover.
  • rollout
    This layer will catch the mouse movement, and will be fired on mouseout.

The bubbling core is the keystone for building a Rich Internet Application, and will allow you to cut the big application down into manageable chunks and components and you can plan the detailed usability, information architecture and accessibility for each component separately. This allows you to develop in parallel with the design or information architecture team and results in reusable components for other applications.

Continue reading about the Bubbling Core…

3 Comments

can\'t locate basic basic info

trying to get info on these basic behaviors...
this link goes nowhere..

Continue reading about the Bubbling Core…

can't seem to find the api for the bubbling core. the links just seem to go round and round...

Comment by Charles - November 7, 2008

RE: cannot locate basic basic info

Hello Charles:

Unfortunately we don't have the full API for the bubbling core, just a bunch of example. But I have published some articles related with the Bubbling Core in the YUIBlog, here are two of them:

http://yuiblog.com/blog/2007/09/13/bubbling-library-by-caridy/

http://yuiblog.com/blog/2008/04/22/caridy-decoupling/

There is the theory and probably all the necessary information to understand the whole concept. Definitely we need the API, and a well documented source codes. I have been working in a new version on top of the YUI 3.x, and this new version will be documented using the YUIDoc.

If you have any particular question... your best bet is the YUI Forum, or you can email to me directly and I will try to help you.

Comment by Caridy - November 7, 2008

circular links

Charles does have a good point- I've found at least two self-referencing links on this page: at the end of the Bubbling Core section, and at the bottom of the page. These can be very confusing to the newcomer. I would recommend you remove the links pointing back to this page as they throw people off the "scent of information" by turning them around in a circle.

Comment by Andy - November 12, 2008
Latest Releases

Accordion Manager
This YUI Widget will allow you to create expandable and collapsible areas using the correct HTML and CSS, but without writing a single line of javascript code. (new)

Loading Mask
The Loading Mask widget will hide all the page's content until the onLoad's event, which mean that the website will not be displayed until the current page be fully loaded. Also this widget can be used in conjunction with the YUI Connection Manager to block the actions over the page until the AJAX's request finish. (new)

 
Hot Components

Accordion Manager
Create expandable and collapsible areas using the correct HTML and CSS, but without writing a single line of javascript code. (released)

Bubbling Core
The bubbling core now include a generic communication mechanism for widget2widget, widget2browser and widget2server messages. (updated lately)

Tooltip Manager
Improved, now using the YUI Overlay instead YUI Tooltips, also introduce a new feature, "content onDemand" using the YUI connection manager. (updated lately)

 
Coming Soon

Bubbling Library for YUI 3.x
A new version of the Bubbling Library compatible with the NEW YUI 3.x. (comming soon)

 
Recommended Reading

Using the YUI TabView Control with the Dispatcher Plugin
YUI Dispatcher Plugin and how to use it along with the YUI TabView to load on-demand content using the YUI Connection Manager.

The Bubbling Technique & Custom Event, YUI’s Secret Weapon
In this article I’ll share my experiences in the event-driven programming within the web browser and show how the Bubbling Library, combined with YUI’s Custom Event capabilities, can create an unobtrusive behavioral layer suitable for powerful web applications.

Event-Driven Web Application Design
I recommend you to read carefully the Christian Heilmann's paper, where he wrote about how to plan an Event-Driven application, and how this technique will become the future of the web application as a result of an evolutive process.

A JavaScript Module Pattern
Eric Miraglia's detailed explanation of how to use the closures and specifically the module pattern (singlenton) as a flexible and multi-funcional structure...

 
Related Links

Yahoo! UI Library (YUI)
YUI Official Website at the Yahoo! Developer Network.

YUI Official Forum
Get help and share your knowledges thru the frenetic javascript mailing list at Yahoo! Developer Network...

Motionbox EventHandler
For those who use propotype instead YUI, here is an implementation of the bubbling core routine for Propotype, I never tested it, but it's seen like a good implementation.

 
 
Linux MySql Server PHP Mozilla FireFox FireBug YAHOO! Bubbling Library
This website is XHTML 1.0 valid! This website can be browsing with all browsers! This website is valid for Level A of Web Accessibility!