Difference between revisions of "Using the JHtmlTabs class in a component"

From Joomla! Documentation

m (moved How to use the JHtmlTabs in a component to How to use the JHtmlTabs Class in a component: The title wasn't reading right, it should have Class after JHtmlTabs.)
(fixed a error in onActive)
Line 15: Line 15:
 
$options = array(
 
$options = array(
 
     'onActive' => 'function(title, description){
 
     'onActive' => 'function(title, description){
         description.setStyle("display", "none");
+
         description.setStyle("display", "block");
 
         title.addClass("open").removeClass("closed");
 
         title.addClass("open").removeClass("closed");
 
     }',
 
     }',

Revision as of 13:08, 27 April 2012

This article covers usage of JHtmlTabs in your Joomla! component for Joomla! versions Joomla 1.6 through Joomla 2.5 and greater. If you are using Joomla! Joomla 1.5, see How_to_use_the_JPane_classes_in_a_component.

Options for JHtmlTabs[edit]

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. (true | false)

Example[edit]

$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");
    }',
    'useCookie' => 'true', // note the quotes around true, since it must be a string.
);

echo JHtml::_('tabs.start', 'tab_group_id', $options);

echo JHtml::_('tabs.panel', JText::_('PANEL_1_TITLE'), 'panel_1_id');
echo 'Panel 1 content can go here.';

echo JHtml::_('tabs.panel', JText::_('PANEL_2_TITLE'), 'panel_2_id');
echo 'Panel 2 content can go here.';

echo JHtml::_('tabs.end');