от, только толсто, много циклов, но работает
<body>
<div>
<div id="multi-parent">
<div>
<div id="firstChild"></div>
</div>
<div>
<div>
<div id="secondChild"></div>
</div>
</div>
</div>
</div>
<script type="text/javascript">
var $ = function(n){return document.getElementById(n);}
var getPerent = function(fe,se){
var body = document.getElementsByTagName("body")[0];
var parentF = fe.parentNode;
var parentS = se.parentNode;
var arrayParantsF = [];
var arrayParantsS = [];
while(true){
if(parentF!=body){
arrayParantsF[arrayParantsF.length]=parentF;
parentF = parentF.parentNode;
}else{
break;
}
}
while(true){
if(parentS!=body){
arrayParantsS[arrayParantsS.length]=parentS;
parentS = parentS.parentNode;
}else{
break;
}
}
for(i=0;i<arrayParantsF.length;i++){
for(j=0;j<arrayParantsS.length;j++){
if(arrayParantsF[i]==arrayParantsS[j]) return arrayParantsS[j];
}
}
return body;
}
alert(getPerent($("firstChild"),$("secondChild")).id);
</script>
</body>