Using the JHtmlTabs class in a component: Difference between revisions
From Joomla! Documentation
Isuckatthis (talk | contribs) No edit summary |
Isuckatthis (talk | contribs) No edit summary |
||
| Line 3: | Line 3: | ||
JHtmlTabs has 3 static methods that can be used to create tabed menus. All functions return strings. | JHtmlTabs has 3 static methods that can be used to create tabed menus. All functions return strings. | ||
===Options for JHtmlTabs=== | ===Options for JHtmlTabs=== | ||
These are the options that can be passed to the <code>JHtmlTabs::start()</code> function. | |||
<code>onActive</code>: A callback function when a tab is activated with two params. 'title' is the tab itself, and 'description' is the tab content. | |||
<code>onBackground</code>: A callback function when a tab is backgrounded | |||
<code>startOffset</code>: The default tab to start with (zero based index). | |||
<code>useCookie</code>: Whether or not to use cookies to store tab active state. (boolean) (true | false) // This is not a string. Don't use quotes. | |||
===Example=== | ===Example=== | ||
Revision as of 12:07, 12 February 2015
Overview
JHtmlTabs has 3 static methods that can be used to create tabed menus. All functions return strings.
Options for JHtmlTabs
These are the options that can be passed to the JHtmlTabs::start() function.
onActive: A callback function when a tab is activated with two params. 'title' is the tab itself, and 'description' is the tab content.
onBackground: A callback function when a tab is backgrounded
startOffset: The default tab to start with (zero based index).
useCookie: Whether or not to use cookies to store tab active state. (boolean) (true | false) // This is not a string. Don't use quotes.
Example
$options = array(
'onActive' => 'function(title, description){
description.setStyle("display", "block");
title.addClass("open").removeClass("closed");
}',
'onBackground' => 'function(title, description){
description.setStyle("display", "none");
title.addClass("closed").removeClass("open");
}',
'startOffset' => 0, // 0 starts on the first tab, 1 starts the second, etc...
'useCookie' => true, // this must not be a string. Don't use quotes.
);
//Note that the options argument is optional so JHtmlTabs::start() can be called without it
echo JHtmlTabs::start('tabs_id',$options);
echo JHtmlTabs::panel("Panel Title 1",'panel-id-1');
echo "<h2>Content of first panel goes here!</h2>";
echo "<p>You can use JLayouHelper to render a layout if you want to</p>";
echo JHtmlTabs::panel(JText::_('CUSTOM_PANEL_TITLE'),'panel-id-2'); //You can use any custom text
echo "<h2>Content of second panel goes here!<h2>";
echo JHtmlTabs::end();