Вообщем столкнулся с проблемой: зная IHTMLElement нужно полчуить его видимый RECT. Как быть?
Щас делаю так:
1) получаю для элемента offsetLeft, offsetTop, offsetHeight, offsetWidth
2) потом сканирую
el:=element.offsetParent;
while (el<>nil) do begin
xLeft:=xLeft+el.offsetLeft;
xTop:=xTop+el.offsetTop;
el:=el.offsetParent;
end;
Нахожу смещение его ректа относительно начала документа.
и вот тут самое интересное:
1) Почему то всегда получаеться что у Rect'a Left and Top меньше на 1-2 пикселя. Что я не учел?
2) как быть если элемент виден не весь? как получить видимую часть?
3) как быть если страницу проскролили? Ведь смещение идет от начало документа но так как документ проскролен то видимое начало не есть начало документа