Вы можете использовать содержит метод
public function contains(child:DisplayObject):Boolean
Определяет, является ли указанный экранный объект дочерним по отношению к экземпляру DisplayObjectContainer
или самому экземпляру. Поиск включает в себя весь список отображения, включая этот DisplayObjectContainer
экземпляр, внуки, правнуки и т. Д.
function haveCommonParent(a:DisplayObject, b:DisplayObject):Boolean
{
for(var p:DisplayObjectContainer = a.parent; p != null; p = p.parent)
{
if(p.contains(b))
return true;
}
return false;
}
Может быть медленным для огромных списков отображения.
Обновление: получить общего родителя, если таковой имеется. Это вернет объект Stage
, если оба находятся на сцене.
function getCommonParent(a:DisplayObject, b:DisplayObject):DisplayObjectContainer
{
for(var p:DisplayObjectContainer = a.parent; p != null; p = p.parent)
{
if(p.contains(b))
return p;
}
return null;
}