Ищем родителя у которого .className содержит 'TimeContainer'. Пример:
var timeContainer = null;
FindParentElementByFilter(referer, function(parent){
if(Common.Class.match(parent, 'TimeContainer')){
timeContainer = parent;
return true;
}
return false;
});
Условие безымянной функции может быть любым.
Функция:
/**
* Ищет до первого parentNode удовлетворяющим условиям fnc
* param {Node} node
* param {Function} fnc
*/
function FindParentElementByFilter(node, fnc){
if(node.parentNode)
if(!fnc(node.parentNode))
FindParentElementByFilter(node.parentNode, fnc);
else{
return node.parentNode;
}
}
Вообще конечно принцип функции был спизжен из .NET Framework, а конкретнее метод .FindAll() из List<T>.