Monday 31 March 2008

JavaScript - Toggle element visibility

Here are 2 functions for showing/hiding an element. The first will simply invert it's visibility relative to the current state. The second has an extra parameter indicating the visibility:
function ToggleElementVisibility( elementID )
{
var element = document.getElementById( elementID );

if ( element != null )
{
if ( element.style.display == 'none' )
{
element.style.display = '';
}
else
{
element.style.display = 'none';
}
}
}

function ShowHideElement( elementID, isVisible )
{
var element = document.getElementById( elementID );

if ( element != null )
{
if ( isVisible == true )
{
element.style.display = '';
}
else
{
element.style.display = 'none';
}
}
}

Example:


<div id="ToggleShowHide" onclick="ShowHideElement( this.id, false )" style="background-color: Red; height: 100px; margin: 0 0 10px 0; width: 100px;"></div> 
<input type="Submit" value="Toggle" onclick="ToggleElementVisibility( 'ToggleShowHide' )" />
<input type="Submit" value="Show" onclick="ShowHideElement( 'ToggleShowHide', true )" />
<input type="Submit" value="Hide" onclick="ShowHideElement( 'ToggleShowHide', false )" />

No comments: