ch.Menu (Class)
Documentation updated on Fri Jul 06 2012, generated by JsDoc Toolkit.
Overview
ch.Menu extends ch.Controllers. Menu lets you organize the links by categories.
View source on GitHubRequires
Returns
itself
Use
Create a new menu without configuration.
var widget = $(".example").menu();
Create a new menu with configuration.
var widget = $(".example").menu({
"selected": 2,
"fx": true
});
Configuration
The following options lets you create a customized ch.Menu:
-
conf: Object Object with configuration properties. -
conf.selected: Number Selects a child that will be open when component was loaded. -
conf.fx: Boolean Enable or disable UI effects. By default, the effects are disable.
Returns
Properties
element
Reference to a DOM Element. This binding between the component and the HTMLElement, defines context where the component will be executed. Also is usual that this element triggers the component default behavior.
HTMLElement
type
This public property defines the component type. All instances are saved into a 'map', grouped by its type. You can reach for any or all of the components from a specific type with 'ch.instances'.
string
uid
The 'uid' is the Chico's unique instance identifier. Every instance has a different 'uid' property. You can see its value by reading the 'uid' property on any public instance.
number
Methods
content(content)
Sets and gets component content. To get the defined content just use the method without arguments, like 'widget.content()'. To define a new content pass an argument to it, like 'widget.content("new content")'. Use a valid URL to get content using AJAX. Use a CSS selector to get content from a DOM Element. Or just use a String with HTML code.
It method borrows ch.Uiobject#content.
Parameters
-
content: string Static content, DOM selector or URL. If argument is empty then will return the content.
Examples
Get the defined content
widget.content();
Set static content
widget.content("Some static content");
Set DOM content
widget.content("#hiddenContent");
Set AJAX content
widget.content("http://chico.com/some/content.html");
off(event, handler)
Removes a callback function from specific event.
It method borrows ch.Object#off.
Parameters
-
eventSince version 0.7.1: string Event nawidget. -
handlerSince version 0.7.1: function Handler function.
Returns
- itself
Examples
Will remove event handler to the "ready" event
var startDoingStuff = function () {
// Some code here!
};
widget.off("ready", startDoingStuff);
on(event, handler)
Add a callback function from specific event.
It method borrows ch.Object#on.
Parameters
-
eventSince version 0.7.1: string Event nawidget. -
handlerSince version 0.7.1: function Handler function.
Returns
- itself
Examples
Will add a event handler to the "ready" event
widget.on("ready", startDoingStuff);
once(event, handler)
Add a callback function from specific event that it will execute once.
It method borrows ch.Object#once.
Parameters
-
eventSince version 0.8.0: string Event nawidget. -
handlerSince version 0.8.0: function Handler function.
Returns
- itself
Examples
Will add a event handler to the "contentLoad" event once
widget.once("contentLoad", startDoingStuff);
Events
ready
Examples
Following the first example, using widget as menu's instance controller:
widget.on("ready",function () {
this.select();
});
select
Examples
When the user select
widget.on("select",function(){
app.off();
});