Я сделал может и криво но по-своему
<a id="some" onmouseover="hover('some','c14141')" onmouseout="nohover()"> Наведи на меня </a>
function hover(id,c){
// узнаем цвет до наведения и запоминаем
var color=document.getElementById(id).style.color;
if (color=="unfefined" || color==""){
var par=document.getElementById(id)
while(color=="undefined" || color==""){par=par.parentNode; color=par.style.color}
colorBefore=color}
else {colorBefore=color}
document.getElementById(id).style.color="#"+c
Hovered=id
}
function nohover(){
if (colorBefore==""){colorBefore="#000000"}
document.getElementById(Hovered).style.color=colorBefore
Hovered=""
}
тока если ни у одного из родителей не будет задан в стилях color будет плохо
еще бы улучшить чтобы не передовать id элемента а вычислять в самой функции