ch.Expando (Class)
Documentation updated on Fri Jul 06 2012, generated by JsDoc Toolkit.
Overview
ch.Expando extends ch.Navs. Expando lets you show or hide the content. Expando needs a pair: the title and the content related to that title.
View source on GitHubReturns
itself
Use
Create a new expando without configuration.
var widget = $(".example").expando();
Create a new expando with configuration.
var widget = $(".example").expando({
"open": true,
"fx": true
});
Configuration
The following options lets you create a customized ch.Expando:
-
conf: Object Object with configuration properties. -
conf.open: Boolean Shows the expando open when component was loaded. By default, the value is false. -
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");
hide()
isActive()
Returns a Boolean if the component's core behavior is active. That means it will return 'true' if the component is on and it will return false otherwise.
It method borrows ch.Navs#isActive.
Returns
- boolean
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);
show()
Events
hide
Examples
undefined
widget.on("hide",function () {
otherComponent.show();
});
See
ready
Examples
Following the first example, using widget as expando's instance controller:
widget.on("ready",function () {
this.show();
});
show
Examples
undefined
widget.on("show",function () {
otherComponent.hide();
});