Я думаю, общий смысл должен быть таким:
function mutualParent(elem1, elem2){
var test;
while(elem1 !== document.body){
elem1 = elem1.parentNode;
test = elem2;
while(test !== document.body){
test = test.parentNode;
if(test === elem1) return test;
};
};
return null;
};