
// Инициализация
//////////////////////////////////////////


var DOM = false;
var NN = false;
var IE = false;
var NN6 = false;
var Opera = false;


function Init()
{
  DOM = (window.document.getElementById)?true:false;
  IE = (window.document.all)?true:false;
  NN6 = DOM;
  NN = (navigator.appName == 'Netscape' && !DOM)?true:false;
  Opera = DOM && window.opera;
  return true;
}


Init();


// Получить ссылку на слой или картинку
//////////////////////////////////////////

function getElement(name)
{
  if (IE) return document.all[name];
  if (DOM) return document.getElementById(name);
  if (NN) return getElementNN(null, name)
}


// Получить родительский слой
//////////////////////////////////////////

function getElementParent(object)
{
  if (NN) return getElementParentNN(object);
  else return object.offsetParent;
}


// Искать слой в NN перебором
//////////////////////////////////////////

function getElementNN(parent, name)
{
  if (parent != null)
  {
    var layers = parent.document.layers;
    var images = parent.document.images;
  }
  else
  {
    var layers = window.document.layers;
    var images = window.document.images;
  }
  if (layers[name]) return layers[name];
  if (images[name]) return images[name];
  for(var i = 0; i < layers.length; i++)
  {
    var object = getElementNN(layers[i], name);
    if (object) return object;
  }
  return false;
}

// Получить родительский слой в NN
//////////////////////////////////////////

function getElementParentNN(object)
{
  if (object.parentLayer) return object.parentLayer;
  else return getImageParentNN(null, object)
}


// Искать родительский слой в NN для картинки
//////////////////////////////////////////

function getImageParentNN(parent, img)
{
  if (parent != null)
  {
    var layers = parent.document.layers;
    var images = parent.document.images;
  }
  else
  {
    var layers = window.document.layers;
    var images = window.document.images;
  }
  if (images[img.name]) return parent;
  for(var i = 0; i < layers.length; i++)
  {
    var object = getImageParentNN(layers[i], img);
    if (object) return object;
  }
  return false;
}
