var element = null;
var elementoW = 0;
var elementoH = 0;
var elementoInc1 = false;
var elementoInc2 = false;
var elementoIntervalo = null;

function atualizarElemento(elemento, largura, altura){
  if (elementoW < largura + 5) {
    elemento.style.width = elementoW + 1 + 'px';
    elementoInc1 = true;
  }
  else {
    elementoInc1 = false;
  }
  if (elementoH < altura + 5) {
    elemento.style.height = elementoH + 1 + 'px';
    elementoInc2 = true;
  }
  else {
    elementoInc2 = false;
  }
  
  if (elementoInc1 || elementoInc2) {
    elementoW = elementoW + 7;
    elementoH = elementoH + 7;
  }
  else {
    clearInterval(elementoIntervalo);
  }
}

function exibirElemento(elemento, pai, largura, altura){
  element = elemento;
  if (elementoW > 0 || elementoH > 0) {
    esconderElemento(element);
  }
  else {
    element.style.position = 'absolute';
    
    if (document.all) { //IE: Possui problemas para obter as posições de um elemento
      var dummy = pai.getBoundingClientRect(); //Método proprietário
      element.style.top = dummy.top + 5 + 'px';
      element.style.left = dummy.left + 'px';
    }
    else { //Firefox e outros navegadores aceitam perfeitamente 
      element.style.top = pai.offsetTop + 5 + 'px';
      element.style.left = pai.offsetLeft + 'px';
    }
    elementoIntervalo = setInterval(function(){
      atualizarElemento(element, largura, altura);
    }, 1);
  }
}

function esconderElemento(elemento){
  elemento.style.width = '0px';
  elemento.style.height = '0px';
  elementoW = 0;
  elementoH = 0;
  element = null;
}

