[Jslib] object hacking

DanielWang5168@aol.com DanielWang5168@aol.com
Sun, 30 Jun 2002 16:52:54 EDT


--part1_ac.298e05a6.2a50c9a6_boundary
Content-Type: text/plain; charset="US-ASCII"
Content-Transfer-Encoding: 7bit

an useful function to extract a list of properties from an object

// 
******************************************************************************

*********

    const getFunct = 1;
    const getVar = 2;
    const getConst = 3;
    const getXULstuff = 10;
    function hackObject(obj,what) {
      result = '';
      switch (what) {
          case getFunct:
             for (i in obj) {
               try {
                 if (typeof obj[i] == 'function') {
                   result = result +
                            '\t<tr>\n' +
                            '\t\t<td><b>function</b></td>\n' +
                            '\t\t<td>' + i + '</td>\n' +
                            '\t</tr>\n';
                   } // if
               }
               catch(error) {
               }
            } // for
            break;
          case getVar:
             for (i in obj) {
               try {
                 if ( (i[0] >= 'a') && (typeof obj[i] != 'function') ) {
                   result = result +
                            '\t<tr>\n' +
                            '\t\t<td><b>' + typeof(obj[i]) + '</b></td>\n' +
                            '\t\t<td>' + i + '</td>\n' +
                            '\t</tr>\n';
                   } // if
               }
               catch(error) {
               }
            } // for
            break;
          case getConst:
             for (i in obj) {
               try {
                  if (i[0] < 'a') {
                    result = result +
                             '\t<tr>\n' +
                             '\t\t<td><span title="' + obj[i] + '">' + i + '<
/span></td>\n' +
                             '\t</tr>\n';
                  } // if
               }
               catch(error) {
               }
            } // for
            break;
          case getXULstuff:
             for (i in obj) {
               try {
                  blah = typeof(obj[i]);   // force exception for XUL 
properties
               }
               catch(error) {
                  result = result +
                           '\t<tr>\n' +
                           '\t\t<td><span title="">' + i + '</span></td>\n' +
                           '\t</tr>\n';
               }
            } // for
            break;
    } // switch
    return result;
  } hackObject()

// 
******************************************************************************

*********

sample code using the function
         s = hackObject(obj,getXULstuff);
         a.document.open();
         a.document.writeln('<table>');
         a.document.writeln(s);
         a.document.writeln('</table>');
         a.document.close();

// 
******************************************************************************

*********

attached is a html file of object definition for DOMNodeInserted

--part1_ac.298e05a6.2a50c9a6_boundary
Content-Type: text/html; name="hack evt.html"
Content-Transfer-Encoding: quoted-printable
Content-Disposition: inline; filename="hack evt.html"

<html>
   <head><title>DOMNodeInserted event properties</title>
</head>
<body>
   <p>Functions</p>
   <div style=3D"margin-left: 2em;">
<table>
=09<tr>
=09=09<td><b>function</b></td>
=09=09<td>stopPropagation</td>
=09</tr>
=09<tr>
=09=09<td><b>function</b></td>
=09=09<td>preventDefault</td>

=09</tr>
=09<tr>
=09=09<td><b>function</b></td>
=09=09<td>initEvent</td>
=09</tr>
=09<tr>
=09=09<td><b>function</b></td>

=09=09<td>initMutationEvent</td>
=09</tr>
=09<tr>
=09=09<td><b>function</b></td>
=09=09<td>preventBubble</td>
=09</tr>
=09<tr>

=09=09<td><b>function</b></td>
=09=09<td>preventCapture</td>
=09</tr>
=09<tr>
=09=09<td><b>function</b></td>
=09=09<td>initUIEvent</td>
=09</tr>

=09<tr>
=09=09<td><b>function</b></td>
=09=09<td>initKeyEvent</td>
=09</tr>
=09<tr>
=09=09<td><b>function</b></td>
=09=09<td>initMouseEvent</td>

=09</tr>
=09<tr>
=09=09<td><b>function</b></td>
=09=09<td>getPreventDefault</td>
=09</tr>
</table>
   </div>


   <p>Properties</p>
   <div style=3D"margin-left: 2em;">
<table>
=09<tr>
=09=09<td><b>string</b></td>
=09=09<td>type</td>
=09</tr>
=09<tr>
=09=09<td><b>object</b></td>
=09=09<td>target</td>

=09</tr>
=09<tr>
=09=09<td><b>object</b></td>
=09=09<td>currentTarget</td>
=09</tr>
=09<tr>
=09=09<td><b>number</b></td>

=09=09<td>eventPhase</td>
=09</tr>
=09<tr>
=09=09<td><b>boolean</b></td>
=09=09<td>bubbles</td>
=09</tr>
=09<tr>

=09=09<td><b>boolean</b></td>
=09=09<td>cancelable</td>
=09</tr>
=09<tr>
=09=09<td><b>number</b></td>
=09=09<td>timeStamp</td>
=09</tr>

=09<tr>
=09=09<td><b>object</b></td>
=09=09<td>relatedNode</td>
=09</tr>
=09<tr>
=09=09<td><b>string</b></td>
=09=09<td>prevValue</td>

=09</tr>
=09<tr>
=09=09<td><b>string</b></td>
=09=09<td>newValue</td>
=09</tr>
=09<tr>
=09=09<td><b>string</b></td>

=09=09<td>attrName</td>
=09</tr>
=09<tr>
=09=09<td><b>number</b></td>
=09=09<td>attrChange</td>
=09</tr>

</table>
   </div>

   <p>Constants</p>
   <div style=3D"margin-left: 2em;">
<table>
=09<tr>
=09=09<td><b>number</b></td>
=09=09<td>CAPTURING_PHASE</td>
=09</tr>
=09<tr>
=09=09<td><b>number</b></td>
=09=09<td>AT_TARGET</td>

=09</tr>
=09<tr>
=09=09<td><b>number</b></td>
=09=09<td>BUBBLING_PHASE</td>
=09</tr>
=09<tr>
=09=09<td><b>number</b></td>

=09=09<td>MODIFICATION</td>
=09</tr>
=09<tr>
=09=09<td><b>number</b></td>
=09=09<td>ADDITION</td>
=09</tr>
=09<tr>

=09=09<td><b>number</b></td>
=09=09<td>REMOVAL</td>
=09</tr>
=09<tr>
=09=09<td><b>number</b></td>
=09=09<td>MOUSEDOWN</td>
=09</tr>

=09<tr>
=09=09<td><b>number</b></td>
=09=09<td>MOUSEUP</td>
=09</tr>
=09<tr>
=09=09<td><b>number</b></td>
=09=09<td>MOUSEOVER</td>

=09</tr>
=09<tr>
=09=09<td><b>number</b></td>
=09=09<td>MOUSEOUT</td>
=09</tr>
=09<tr>
=09=09<td><b>number</b></td>

=09=09<td>MOUSEMOVE</td>
=09</tr>
=09<tr>
=09=09<td><b>number</b></td>
=09=09<td>MOUSEDRAG</td>
=09</tr>
=09<tr>

=09=09<td><b>number</b></td>
=09=09<td>CLICK</td>
=09</tr>
=09<tr>
=09=09<td><b>number</b></td>
=09=09<td>DBLCLICK</td>
=09</tr>

=09<tr>
=09=09<td><b>number</b></td>
=09=09<td>KEYDOWN</td>
=09</tr>
=09<tr>
=09=09<td><b>number</b></td>
=09=09<td>KEYUP</td>

=09</tr>
=09<tr>
=09=09<td><b>number</b></td>
=09=09<td>KEYPRESS</td>
=09</tr>
=09<tr>
=09=09<td><b>number</b></td>

=09=09<td>DRAGDROP</td>
=09</tr>
=09<tr>
=09=09<td><b>number</b></td>
=09=09<td>FOCUS</td>
=09</tr>
=09<tr>

=09=09<td><b>number</b></td>
=09=09<td>BLUR</td>
=09</tr>
=09<tr>
=09=09<td><b>number</b></td>
=09=09<td>SELECT</td>
=09</tr>

=09<tr>
=09=09<td><b>number</b></td>
=09=09<td>CHANGE</td>
=09</tr>
=09<tr>
=09=09<td><b>number</b></td>
=09=09<td>RESET</td>

=09</tr>
=09<tr>
=09=09<td><b>number</b></td>
=09=09<td>SUBMIT</td>
=09</tr>
=09<tr>
=09=09<td><b>number</b></td>

=09=09<td>SCROLL</td>
=09</tr>
=09<tr>
=09=09<td><b>number</b></td>
=09=09<td>LOAD</td>
=09</tr>
=09<tr>

=09=09<td><b>number</b></td>
=09=09<td>UNLOAD</td>
=09</tr>
=09<tr>
=09=09<td><b>number</b></td>
=09=09<td>XFER_DONE</td>
=09</tr>

=09<tr>
=09=09<td><b>number</b></td>
=09=09<td>ABORT</td>
=09</tr>
=09<tr>
=09=09<td><b>number</b></td>
=09=09<td>ERROR</td>

=09</tr>
=09<tr>
=09=09<td><b>number</b></td>
=09=09<td>LOCATE</td>
=09</tr>
=09<tr>
=09=09<td><b>number</b></td>

=09=09<td>MOVE</td>
=09</tr>
=09<tr>
=09=09<td><b>number</b></td>
=09=09<td>RESIZE</td>
=09</tr>
=09<tr>

=09=09<td><b>number</b></td>
=09=09<td>FORWARD</td>
=09</tr>
=09<tr>
=09=09<td><b>number</b></td>
=09=09<td>HELP</td>
=09</tr>

=09<tr>
=09=09<td><b>number</b></td>
=09=09<td>BACK</td>
=09</tr>
=09<tr>
=09=09<td><b>number</b></td>
=09=09<td>TEXT</td>

=09</tr>
=09<tr>
=09=09<td><b>number</b></td>
=09=09<td>ALT_MASK</td>
=09</tr>
=09<tr>
=09=09<td><b>number</b></td>

=09=09<td>CONTROL_MASK</td>
=09</tr>
=09<tr>
=09=09<td><b>number</b></td>
=09=09<td>SHIFT_MASK</td>
=09</tr>
=09<tr>

=09=09<td><b>number</b></td>
=09=09<td>META_MASK</td>
=09</tr>
=09<tr>
=09=09<td><b>number</b></td>
=09=09<td>DOM_VK_CANCEL</td>
=09</tr>

=09<tr>
=09=09<td><b>number</b></td>
=09=09<td>DOM_VK_HELP</td>
=09</tr>
=09<tr>
=09=09<td><b>number</b></td>
=09=09<td>DOM_VK_BACK_SPACE</td>

=09</tr>
=09<tr>
=09=09<td><b>number</b></td>
=09=09<td>DOM_VK_TAB</td>
=09</tr>
=09<tr>
=09=09<td><b>number</b></td>

=09=09<td>DOM_VK_CLEAR</td>
=09</tr>
=09<tr>
=09=09<td><b>number</b></td>
=09=09<td>DOM_VK_RETURN</td>
=09</tr>
=09<tr>

=09=09<td><b>number</b></td>
=09=09<td>DOM_VK_ENTER</td>
=09</tr>
=09<tr>
=09=09<td><b>number</b></td>
=09=09<td>DOM_VK_SHIFT</td>
=09</tr>

=09<tr>
=09=09<td><b>number</b></td>
=09=09<td>DOM_VK_CONTROL</td>
=09</tr>
=09<tr>
=09=09<td><b>number</b></td>
=09=09<td>DOM_VK_ALT</td>

=09</tr>
=09<tr>
=09=09<td><b>number</b></td>
=09=09<td>DOM_VK_PAUSE</td>
=09</tr>
=09<tr>
=09=09<td><b>number</b></td>

=09=09<td>DOM_VK_CAPS_LOCK</td>
=09</tr>
=09<tr>
=09=09<td><b>number</b></td>
=09=09<td>DOM_VK_ESCAPE</td>
=09</tr>
=09<tr>

=09=09<td><b>number</b></td>
=09=09<td>DOM_VK_SPACE</td>
=09</tr>
=09<tr>
=09=09<td><b>number</b></td>
=09=09<td>DOM_VK_PAGE_UP</td>
=09</tr>

=09<tr>
=09=09<td><b>number</b></td>
=09=09<td>DOM_VK_PAGE_DOWN</td>
=09</tr>
=09<tr>
=09=09<td><b>number</b></td>
=09=09<td>DOM_VK_END</td>

=09</tr>
=09<tr>
=09=09<td><b>number</b></td>
=09=09<td>DOM_VK_HOME</td>
=09</tr>
=09<tr>
=09=09<td><b>number</b></td>

=09=09<td>DOM_VK_LEFT</td>
=09</tr>
=09<tr>
=09=09<td><b>number</b></td>
=09=09<td>DOM_VK_UP</td>
=09</tr>
=09<tr>

=09=09<td><b>number</b></td>
=09=09<td>DOM_VK_RIGHT</td>
=09</tr>
=09<tr>
=09=09<td><b>number</b></td>
=09=09<td>DOM_VK_DOWN</td>
=09</tr>

=09<tr>
=09=09<td><b>number</b></td>
=09=09<td>DOM_VK_PRINTSCREEN</td>
=09</tr>
=09<tr>
=09=09<td><b>number</b></td>
=09=09<td>DOM_VK_INSERT</td>

=09</tr>
=09<tr>
=09=09<td><b>number</b></td>
=09=09<td>DOM_VK_DELETE</td>
=09</tr>
=09<tr>
=09=09<td><b>number</b></td>

=09=09<td>DOM_VK_0</td>
=09</tr>
=09<tr>
=09=09<td><b>number</b></td>
=09=09<td>DOM_VK_1</td>
=09</tr>
=09<tr>

=09=09<td><b>number</b></td>
=09=09<td>DOM_VK_2</td>
=09</tr>
=09<tr>
=09=09<td><b>number</b></td>
=09=09<td>DOM_VK_3</td>
=09</tr>

=09<tr>
=09=09<td><b>number</b></td>
=09=09<td>DOM_VK_4</td>
=09</tr>
=09<tr>
=09=09<td><b>number</b></td>
=09=09<td>DOM_VK_5</td>

=09</tr>
=09<tr>
=09=09<td><b>number</b></td>
=09=09<td>DOM_VK_6</td>
=09</tr>
=09<tr>
=09=09<td><b>number</b></td>

=09=09<td>DOM_VK_7</td>
=09</tr>
=09<tr>
=09=09<td><b>number</b></td>
=09=09<td>DOM_VK_8</td>
=09</tr>
=09<tr>

=09=09<td><b>number</b></td>
=09=09<td>DOM_VK_9</td>
=09</tr>
=09<tr>
=09=09<td><b>number</b></td>
=09=09<td>DOM_VK_SEMICOLON</td>
=09</tr>

=09<tr>
=09=09<td><b>number</b></td>
=09=09<td>DOM_VK_EQUALS</td>
=09</tr>
=09<tr>
=09=09<td><b>number</b></td>
=09=09<td>DOM_VK_A</td>

=09</tr>
=09<tr>
=09=09<td><b>number</b></td>
=09=09<td>DOM_VK_B</td>
=09</tr>
=09<tr>
=09=09<td><b>number</b></td>

=09=09<td>DOM_VK_C</td>
=09</tr>
=09<tr>
=09=09<td><b>number</b></td>
=09=09<td>DOM_VK_D</td>
=09</tr>
=09<tr>

=09=09<td><b>number</b></td>
=09=09<td>DOM_VK_E</td>
=09</tr>
=09<tr>
=09=09<td><b>number</b></td>
=09=09<td>DOM_VK_F</td>
=09</tr>

=09<tr>
=09=09<td><b>number</b></td>
=09=09<td>DOM_VK_G</td>
=09</tr>
=09<tr>
=09=09<td><b>number</b></td>
=09=09<td>DOM_VK_H</td>

=09</tr>
=09<tr>
=09=09<td><b>number</b></td>
=09=09<td>DOM_VK_I</td>
=09</tr>
=09<tr>
=09=09<td><b>number</b></td>

=09=09<td>DOM_VK_J</td>
=09</tr>
=09<tr>
=09=09<td><b>number</b></td>
=09=09<td>DOM_VK_K</td>
=09</tr>
=09<tr>

=09=09<td><b>number</b></td>
=09=09<td>DOM_VK_L</td>
=09</tr>
=09<tr>
=09=09<td><b>number</b></td>
=09=09<td>DOM_VK_M</td>
=09</tr>

=09<tr>
=09=09<td><b>number</b></td>
=09=09<td>DOM_VK_N</td>
=09</tr>
=09<tr>
=09=09<td><b>number</b></td>
=09=09<td>DOM_VK_O</td>

=09</tr>
=09<tr>
=09=09<td><b>number</b></td>
=09=09<td>DOM_VK_P</td>
=09</tr>
=09<tr>
=09=09<td><b>number</b></td>

=09=09<td>DOM_VK_Q</td>
=09</tr>
=09<tr>
=09=09<td><b>number</b></td>
=09=09<td>DOM_VK_R</td>
=09</tr>
=09<tr>

=09=09<td><b>number</b></td>
=09=09<td>DOM_VK_S</td>
=09</tr>
=09<tr>
=09=09<td><b>number</b></td>
=09=09<td>DOM_VK_T</td>
=09</tr>

=09<tr>
=09=09<td><b>number</b></td>
=09=09<td>DOM_VK_U</td>
=09</tr>
=09<tr>
=09=09<td><b>number</b></td>
=09=09<td>DOM_VK_V</td>

=09</tr>
=09<tr>
=09=09<td><b>number</b></td>
=09=09<td>DOM_VK_W</td>
=09</tr>
=09<tr>
=09=09<td><b>number</b></td>

=09=09<td>DOM_VK_X</td>
=09</tr>
=09<tr>
=09=09<td><b>number</b></td>
=09=09<td>DOM_VK_Y</td>
=09</tr>
=09<tr>

=09=09<td><b>number</b></td>
=09=09<td>DOM_VK_Z</td>
=09</tr>
=09<tr>
=09=09<td><b>number</b></td>
=09=09<td>DOM_VK_NUMPAD0</td>
=09</tr>

=09<tr>
=09=09<td><b>number</b></td>
=09=09<td>DOM_VK_NUMPAD1</td>
=09</tr>
=09<tr>
=09=09<td><b>number</b></td>
=09=09<td>DOM_VK_NUMPAD2</td>

=09</tr>
=09<tr>
=09=09<td><b>number</b></td>
=09=09<td>DOM_VK_NUMPAD3</td>
=09</tr>
=09<tr>
=09=09<td><b>number</b></td>

=09=09<td>DOM_VK_NUMPAD4</td>
=09</tr>
=09<tr>
=09=09<td><b>number</b></td>
=09=09<td>DOM_VK_NUMPAD5</td>
=09</tr>
=09<tr>

=09=09<td><b>number</b></td>
=09=09<td>DOM_VK_NUMPAD6</td>
=09</tr>
=09<tr>
=09=09<td><b>number</b></td>
=09=09<td>DOM_VK_NUMPAD7</td>
=09</tr>

=09<tr>
=09=09<td><b>number</b></td>
=09=09<td>DOM_VK_NUMPAD8</td>
=09</tr>
=09<tr>
=09=09<td><b>number</b></td>
=09=09<td>DOM_VK_NUMPAD9</td>

=09</tr>
=09<tr>
=09=09<td><b>number</b></td>
=09=09<td>DOM_VK_MULTIPLY</td>
=09</tr>
=09<tr>
=09=09<td><b>number</b></td>

=09=09<td>DOM_VK_ADD</td>
=09</tr>
=09<tr>
=09=09<td><b>number</b></td>
=09=09<td>DOM_VK_SEPARATOR</td>
=09</tr>
=09<tr>

=09=09<td><b>number</b></td>
=09=09<td>DOM_VK_SUBTRACT</td>
=09</tr>
=09<tr>
=09=09<td><b>number</b></td>
=09=09<td>DOM_VK_DECIMAL</td>
=09</tr>

=09<tr>
=09=09<td><b>number</b></td>
=09=09<td>DOM_VK_DIVIDE</td>
=09</tr>
=09<tr>
=09=09<td><b>number</b></td>
=09=09<td>DOM_VK_F1</td>

=09</tr>
=09<tr>
=09=09<td><b>number</b></td>
=09=09<td>DOM_VK_F2</td>
=09</tr>
=09<tr>
=09=09<td><b>number</b></td>

=09=09<td>DOM_VK_F3</td>
=09</tr>
=09<tr>
=09=09<td><b>number</b></td>
=09=09<td>DOM_VK_F4</td>
=09</tr>
=09<tr>

=09=09<td><b>number</b></td>
=09=09<td>DOM_VK_F5</td>
=09</tr>
=09<tr>
=09=09<td><b>number</b></td>
=09=09<td>DOM_VK_F6</td>
=09</tr>

=09<tr>
=09=09<td><b>number</b></td>
=09=09<td>DOM_VK_F7</td>
=09</tr>
=09<tr>
=09=09<td><b>number</b></td>
=09=09<td>DOM_VK_F8</td>

=09</tr>
=09<tr>
=09=09<td><b>number</b></td>
=09=09<td>DOM_VK_F9</td>
=09</tr>
=09<tr>
=09=09<td><b>number</b></td>

=09=09<td>DOM_VK_F10</td>
=09</tr>
=09<tr>
=09=09<td><b>number</b></td>
=09=09<td>DOM_VK_F11</td>
=09</tr>
=09<tr>

=09=09<td><b>number</b></td>
=09=09<td>DOM_VK_F12</td>
=09</tr>
=09<tr>
=09=09<td><b>number</b></td>
=09=09<td>DOM_VK_F13</td>
=09</tr>

=09<tr>
=09=09<td><b>number</b></td>
=09=09<td>DOM_VK_F14</td>
=09</tr>
=09<tr>
=09=09<td><b>number</b></td>
=09=09<td>DOM_VK_F15</td>

=09</tr>
=09<tr>
=09=09<td><b>number</b></td>
=09=09<td>DOM_VK_F16</td>
=09</tr>
=09<tr>
=09=09<td><b>number</b></td>

=09=09<td>DOM_VK_F17</td>
=09</tr>
=09<tr>
=09=09<td><b>number</b></td>
=09=09<td>DOM_VK_F18</td>
=09</tr>
=09<tr>

=09=09<td><b>number</b></td>
=09=09<td>DOM_VK_F19</td>
=09</tr>
=09<tr>
=09=09<td><b>number</b></td>
=09=09<td>DOM_VK_F20</td>
=09</tr>

=09<tr>
=09=09<td><b>number</b></td>
=09=09<td>DOM_VK_F21</td>
=09</tr>
=09<tr>
=09=09<td><b>number</b></td>
=09=09<td>DOM_VK_F22</td>

=09</tr>
=09<tr>
=09=09<td><b>number</b></td>
=09=09<td>DOM_VK_F23</td>
=09</tr>
=09<tr>
=09=09<td><b>number</b></td>

=09=09<td>DOM_VK_F24</td>
=09</tr>
=09<tr>
=09=09<td><b>number</b></td>
=09=09<td>DOM_VK_NUM_LOCK</td>
=09</tr>
=09<tr>

=09=09<td><b>number</b></td>
=09=09<td>DOM_VK_SCROLL_LOCK</td>
=09</tr>
=09<tr>
=09=09<td><b>number</b></td>
=09=09<td>DOM_VK_COMMA</td>
=09</tr>

=09<tr>
=09=09<td><b>number</b></td>
=09=09<td>DOM_VK_PERIOD</td>
=09</tr>
=09<tr>
=09=09<td><b>number</b></td>
=09=09<td>DOM_VK_SLASH</td>

=09</tr>
=09<tr>
=09=09<td><b>number</b></td>
=09=09<td>DOM_VK_BACK_QUOTE</td>
=09</tr>
=09<tr>
=09=09<td><b>number</b></td>

=09=09<td>DOM_VK_OPEN_BRACKET</td>
=09</tr>
=09<tr>
=09=09<td><b>number</b></td>
=09=09<td>DOM_VK_BACK_SLASH</td>
=09</tr>
=09<tr>

=09=09<td><b>number</b></td>
=09=09<td>DOM_VK_CLOSE_BRACKET</td>
=09</tr>
=09<tr>
=09=09<td><b>number</b></td>
=09=09<td>DOM_VK_QUOTE</td>
=09</tr>

=09<tr>
=09=09<td><b>number</b></td>
=09=09<td>DOM_VK_META</td>
=09</tr>
=09<tr>
=09=09<td><b>number</b></td>
=09=09<td>SCROLL_PAGE_UP</td>

=09</tr>
=09<tr>
=09=09<td><b>number</b></td>
=09=09<td>SCROLL_PAGE_DOWN</td>
=09</tr>
</table>
   </div>

   <p>XUL specific properties</p>
   <div style=3D"margin-left: 2em;">
<table>
=09<tr>
=09=09<td><span title=3D"">originalTarget</span></td>
=09</tr>
=09<tr>
=09=09<td><span title=3D"">view</span></td>
=09</tr>
=09<tr>

=09=09<td><span title=3D"">detail</span></td>
=09</tr>
=09<tr>
=09=09<td><span title=3D"">charCode</span></td>
=09</tr>
=09<tr>
=09=09<td><span title=3D"">keyCode</span></td>

=09</tr>
=09<tr>
=09=09<td><span title=3D"">altKey</span></td>
=09</tr>
=09<tr>
=09=09<td><span title=3D"">ctrlKey</span></td>
=09</tr>
=09<tr>

=09=09<td><span title=3D"">shiftKey</span></td>
=09</tr>
=09<tr>
=09=09<td><span title=3D"">metaKey</span></td>
=09</tr>
=09<tr>
=09=09<td><span title=3D"">screenX</span></td>

=09</tr>
=09<tr>
=09=09<td><span title=3D"">screenY</span></td>
=09</tr>
=09<tr>
=09=09<td><span title=3D"">clientX</span></td>
=09</tr>
=09<tr>

=09=09<td><span title=3D"">clientY</span></td>
=09</tr>
=09<tr>
=09=09<td><span title=3D"">button</span></td>
=09</tr>
=09<tr>
=09=09<td><span title=3D"">relatedTarget</span></td>

=09</tr>
=09<tr>
=09=09<td><span title=3D"">layerX</span></td>
=09</tr>
=09<tr>
=09=09<td><span title=3D"">layerY</span></td>
=09</tr>
=09<tr>

=09=09<td><span title=3D"">pageX</span></td>
=09</tr>
=09<tr>
=09=09<td><span title=3D"">pageY</span></td>
=09</tr>
=09<tr>
=09=09<td><span title=3D"">which</span></td>

=09</tr>
=09<tr>
=09=09<td><span title=3D"">rangeParent</span></td>
=09</tr>
=09<tr>
=09=09<td><span title=3D"">rangeOffset</span></td>
=09</tr>
=09<tr>

=09=09<td><span title=3D"">cancelBubble</span></td>
=09</tr>
=09<tr>
=09=09<td><span title=3D"">isChar</span></td>
=09</tr>
</table>
   </div>
</body></html>
--part1_ac.298e05a6.2a50c9a6_boundary--