componentFromPoint Method | Internet Development Index |
Returns the component located at the specified coordinates via certain events.
Syntax
sScrollComponent = object.componentFromPoint(iCoordX, iCoordY)
Parameters
iCoordX Required. Integer that specifies the client window coordinate of x. iCoordY Required. Integer that specifies the client window coordinate of y.
Return Value
String. Returns one of the following possible values:
empty string Component is inside the client area of the object. outside Component is outside the bounds of the object. scrollbarDown Down scroll arrow is at the specified location. scrollbarHThumb Horizontal scroll thumb or box is at the specified location. scrollbarLeft Left scroll arrow is at the specified location. scrollbarPageDown Page-down scroll bar shaft is at the specified location. scrollbarPageLeft Page-left scroll bar shaft is at the specified location. scrollbarPageRight Page-right scroll bar shaft is at the specified location. scrollbarPageUp Page-up scroll bar shaft is at the specified location. scrollbarRight Right scroll arrow is at the specified location. scrollbarUp Up scroll arrow is at the specified location. scrollbarVThumb Vertical scroll thumb or box is at the specified location. handleBottom Bottom sizing handle is at the specified location. handleBottomLeft Lower-left sizing handle is at the specified location. handleBottomRight Lower-right sizing handle is at the specified location. handleLeft Left sizing handle is at the specified location. handleRight Right sizing handle is at the specified location. handleTop Top sizing handle is at the specified location. handleTopLeft Upper-left sizing handle is at the specified location. handleTopRight Upper-right sizing handle is at the specified location.
Remarks
The componentFromPoint method, available as of Microsoft® Internet Explorer 5, is applicable to any object that can be given scroll bars through Cascading Style Sheets (CSS).
The componentFromPoint method may not consistently return the same object when used with the onmouseover event. Because a user's mouse speed and entry point can vary, different components of an element can fire the onmouseover event. For example, when a user moves the cursor over a textArea object with scroll bars, the event might fire when the mouse enters the component border, the scroll bars, or the client region. Once the event fires, the expected element may not be returned unless the scroll bars were the point of entry for the mouse. In this case, the onmousemove event can be used to provide more consistent results.
For the object's sizing handles to appear, designMode must be On and the object must be selected.
Example
This example uses the componentFromPoint method to determine which object the mouse pointer is hovering over.
<HTML> <HEAD> <SCRIPT> /*When this function is activated, an alert pops up displays the component at the position of the pointer. */ function ComponentSnapShot(){ var sElem = ""; sElem = document.body.componentFromPoint( event.clientX, event.clientY ); if (sElem=="") alert("No component there!"); else alert("Component: " + sElem); } function trackElement(){ var sElem = ""; sElem = document.body.componentFromPoint( event.clientX, event.clientY ); window.status = "mousemove " + event.clientX + ", " + event.clientY + " The mouse pointer is hovering over: " + sElem; } </SCRIPT> </HEAD> <!-- There are several different events that can be used with componentFromPoint. Below are a few of them. Be carefull! Not all mouse events can be used with componentFromPoint. --> <BODY onmousemove="trackElement()" onmousedown="ComponentSnapShot()" onkeydown="ComponentSnapShot()" oncontextmenu="ComponentSnapShot()"> <TEXTAREA COLS=500 ROWS=500> This text forces scroll bars to appear in the window. </TEXTAREA> </BODY> </HTML>
Standards Information
There is no public standard that applies to this method.
Applies To
A, ACRONYM, ADDRESS, APPLET, AREA, B, BASE, BASEFONT, BDO, BGSOUND, BIG, BLOCKQUOTE, BODY, BR, BUTTON, CAPTION, CENTER, CITE, CODE, COL, COLGROUP, COMMENT, CUSTOM, DD, DEL, DFN, DIR, DIV, DL, DT, EM, EMBED, FIELDSET, FONT, FORM, FRAME, FRAMESET, HEAD, hn, HR, HTML, I, IFRAME, IMG, INPUT type=button, INPUT type=checkbox, INPUT type=file, INPUT type=hidden, INPUT type=image, INPUT type=password, INPUT type=radio, INPUT type=reset, INPUT type=submit, INPUT type=text, INS, ISINDEX, KBD, LABEL, LEGEND, LI, LINK, LISTING, MAP, MARQUEE, MENU, nextID, NOBR, NOFRAMES, NOSCRIPT, OBJECT, OL, OPTION, P, PLAINTEXT, PRE, Q, RT, RUBY, S, SAMP, SCRIPT, SELECT, SMALL, SPAN, STRIKE, STRONG, SUB, SUP, TABLE, TBODY, TD, TEXTAREA, TFOOT, TH, THEAD, TITLE, TR, TT, U, UL, VAR, WBR, XML, XMP
See Also
doScroll, onscroll