home *** CD-ROM | disk | FTP | other *** search
/ Chip 2003 November / Chip_2003-11_cd1.bin / chplus / chlapark / event_attacher.js < prev    next >
Text File  |  2003-09-29  |  972b  |  41 lines

  1. /*
  2. Scott Andrew's event attacher
  3. http://www.scottandrew.com/
  4.  
  5. Modified by Riki 'Fczbkk' Fridrich to work correctly with Opera 7+. You should
  6. find actual version of this script at
  7. http://js.fczbkk.sk/event_attacher/
  8. */
  9.  
  10.  
  11. function addEvent(obj, evType, fn, useCapture){
  12.     // Operu 7+ hacks
  13.     if (window.opera) {
  14.         // Opera doesn't accept attaching events on object window, but accepts them on object document
  15.         if (obj == window) {
  16.             obj = document;
  17.         }
  18.     }
  19.     
  20.     if (obj.addEventListener){
  21.         obj.addEventListener(evType, fn, useCapture);
  22.         return true;
  23.     } else if (obj.attachEvent){
  24.         var r = obj.attachEvent("on"+evType, fn);
  25.         return r;
  26.     } else {
  27.         return false;
  28.     }
  29. }
  30.  
  31. function removeEvent(obj, evType, fn, useCapture) {
  32.     if (obj.removeEventListener) {
  33.         obj.removeEventListener(evType, fn, useCapture);
  34.         return true;
  35.     } else if (obj.detachEvent) {
  36.         var r = obj.detachEvent("on"+evType, fn);
  37.         return r;
  38.     } else {
  39.         return false;
  40.     }
  41. }