| 
 
 
 /*
 JavaScript Bible, Fourth Edition
 by Danny Goodman
 
 John Wiley & Sons CopyRight 2001
 */
 
 <HTML>
 <HEAD>
 <TITLE>offsetParent Property</TITLE>
 <SCRIPT LANGUAGE="JavaScript">
 function setImagePosition(){
 var cElement = document.all.myCell
 // Set flag for whether calculations should use
 // client- or offset- property measures. Use
 // client- for IE5/Mac and IE4/Windows; otherwise
 // use offset- properties. An ugly, but necessary
 // workaround.
 var useClient = (cElement.offsetTop == 0) ?
 ((cElement.offsetParent.tagName == "TR") ? false : true) : false
 if (useClient) {
 var x = cElement.clientLeft
 var y = cElement.clientTop
 } else {
 var x = cElement.offsetLeft
 var y = cElement.offsetTop
 }
 var pElement = document.all.myCell.offsetParent
 while (pElement != document.body) {
 if (useClient) {
 x += pElement.clientLeft
 y += pElement.clientTop
 } else {
 x += pElement.offsetLeft
 y += pElement.offsetTop
 }
 pElement = pElement.offsetParent
 }
 document.all.myDIV.style.pixelLeft = x
 document.all.myDIV.style.pixelTop = y
 document.all.myDIV.style.visibility = "visible"
 }
 </SCRIPT>
 </HEAD>
 <BODY onload="setImagePosition()">
 <SCRIPT LANGUAGE="JavaScript">
 </SCRIPT>
 <H1>The offsetParent Property</H1>
 <HR>
 <P>After the document loads, the script positions a small image in the upper
 left corner of the second table cell.</P>
 <TABLE BORDER=1 ALIGN="center">
 <TR>
 <TD>This is the first cell</TD>
 <TD ID="myCell">This is the second cell.</TD>
 </TR>
 </TABLE>
 <DIV ID="myDIV" STYLE="position:absolute; visibility:hidden; height:12; width:12">
 <IMG SRC="http://www.java2s.com/style/logo.png" HEIGHT=12 WIDTH=12></DIV>
 </BODY>
 </HTML>
 
 
 
 
 |