This is quite clearly best solved by Javascript.
Basically you want to draw your arrow (or whatever) so that its tip points to the area of interest.
Best bet is to:
- find the area in question (say by using document.getElementById)
- compute the (possibly relative) position of the element node.
- reposition/reorient your pointer to point to it.
The second step is generally a difficult problem for arbitrary DHTML documents in various browsers.
I recommend the "walk up the tree" approach... which is basically just walking up the .parent chain from your interesting node until you find the first node that is absolutely positioned.. then you walk back down, asking the browser for the "computed" styles of each container element until you get to the target node, collecting positioning attributes on the way down. You should end up with a "recipe" for how to compute the position of the target-node. (A thorough understanding of DOM, CSSp and browser DOM-bugs is required... implementation left as an exercise for the reader ;)
-David
Posts are HTML formatted. Put <p> </p> tags around your paragraphs. Put <code> </code> tags around your code and data!
Titles consisting of a single word are discouraged, and in most cases are disallowed outright.
Read Where should I post X? if you're not absolutely sure you're posting in the right place.
Please read these before you post! —
Posts may use any of the Perl Monks Approved HTML tags:
- a, abbr, b, big, blockquote, br, caption, center, col, colgroup, dd, del, details, div, dl, dt, em, font, h1, h2, h3, h4, h5, h6, hr, i, ins, li, ol, p, pre, readmore, small, span, spoiler, strike, strong, sub, summary, sup, table, tbody, td, tfoot, th, thead, tr, tt, u, ul, wbr
You may need to use entities for some characters, as follows. (Exception: Within code tags, you can put the characters literally.)
| |
For: |
|
Use: |
| & | | & |
| < | | < |
| > | | > |
| [ | | [ |
| ] | | ] |
Link using PerlMonks shortcuts! What shortcuts can I use for linking?
See Writeup Formatting Tips and other pages linked from there for more info.