﻿function $(id) {
  return window.document.getElementById(id);
}      
      
var Contains = {
  containsDOM: function(container, containee) {
    var isParent = false;
    do {
      if ((isParent = container == containee))
        break;
      try{
        containee = containee.parentNode;
      }catch(e){
        break;
      }
    }while (containee != null);
    return isParent;
  },

  checkMouseEnter: function(element, evt) {
    if (element.contains && evt.fromElement) {
      return !element.contains(evt.fromElement);
    }
    else if (evt.relatedTarget) {
      return !Contains.containsDOM(element, evt.relatedTarget);
    }
  },

  checkMouseLeave: function(element, evt) {
    if (element.contains && evt.toElement) {
      return !element.contains(evt.toElement);
    }
    else if (evt.relatedTarget) {
      return !Contains.containsDOM(element, evt.relatedTarget);
    }
  }
}
