/*
  Biblioteca de Javascript DOM Crossbrowser
  com catchup, criada no curso da Visie de
  23 a 26 de julho de 2007
*/

// Retorna o objeto do id informado
function $(id){
  return document.getElementById(id)
}

// Retorna os objetos com a tag informada
function $tags(tagName,obj){
  if(typeof obj=="undefined")obj=document
  return obj.getElementsByTagName(tagName)
}

//Remove uma classe de um elemento
function removeClass(obj,className){
  var r=eval("/\\b"+className+"\\b/g")
  obj.className=obj.className.replace(r,"")
}

//substitui um objeto por outro
function $replace(n,o){
  o.parentNode.replaceChild(n,o)
}

//insere um objeto antes do outro
function $before(n,o){
  o.parentNode.insertBefore(n,o)
}

//remove um objeto
function $remove(o){
  o.parentNode.removeChild(o)
}

//cria um novo elemento
function $new(tagName,innerHTML){
  var n=document.createElement(tagName)
  if(typeof innerHTML=="string")
    n.innerHTML=innerHTML
  return n
}

//atribui um evento a um objeto
function addEvent(obj,evType,fn){
  if(obj.addEventListener)
    obj.addEventListener(evType,fn,true)
  else
    obj.attachEvent("on"+evType,fn)
}

//descobre que objeto sofreu o evento
// exemplo: qual link foi clicado
function getSource(e){
  if(typeof e=="undefined")e=window.event
  if(e.target)
    return e.target
  else
    return e.srcElement
}

//Cancela um evento
function cancelEvent(e){
  try{
    e.preventDefault()
  }catch(e){}
  return false
}













