<pre data-sub="prettyprint:_">
// Get a style property (name) of a specific element (elem)
function getStyle( elem, name )
{
// If the property exists in style[], then it's been set
// recently (and is current)
if (elem.style[name])
{
return elem.style[name];
}
// Otherwise, try to use IE's method
else if (elem.currentStyle)
{
return elem.currentStyle[name];
}
// Or the W3C's method, if it exists
else if (document.defaultView && document.defaultView.getComputedStyle)
{
// It uses the traditional 'text-align' style of rule writing,
// instead of textAlign
name = name.replace(/([A-Z])/g,"-$1");
name = name.toLowerCase();
// Get the style object and get the value of the property (if it exists)
var s = document.defaultView.getComputedStyle(elem,"");
return s && s.getPropertyValue(name);
// Otherwise, we're using some other browser
} else
return null;
}
</pre>