function highlightFor(id,color,seconds){
var element = document.getElementById(id)
var origcolor = element.style.backgroundColor
element.style.backgroundColor = color;
var t = setTimeout(function(){
element.style.backgroundColor = origcolor;
},(seconds*1000));
}
should work. Supply it with the id of the element, the highlight color and the time you want the highlight to display for (in seconds). For example
highlightFor('object','yellow',3);
EDIT: As far as colours set in stylesheets is concerned, I strongly suggest using a javascript library (like jQuery). I know you say that you've had some problems with it, but it's most likely there's a tiny bug in the code you've written that's giving you that opinion. Just ask on SO if you have any questions about jQuery!