77 messaggi dal 09 ottobre 2001
Ciao a tutti, vi pongo il mio problema:

Ho una pagina che contiene un certo numero di controlli e per far si che la pagina possa adattarsi a qualsiasi dimensione, questi controlli sono inseriti all'interno di una table e le dimensioni sono espresse in percentuali.
Una volta che la pagina è stata creata mi serve sapere di una particolare input text dove è realmente collocata in termini di pixel.
Usando document.getElementById('textbox').style.top o left mi restituisce 0 o il valore in percentuale impostato inizialmente!

Come posso fare per ottenere quello che cerco??

Grazie

ANdrea

PS Spero di essere stato chiaro.
575 messaggi dal 23 giugno 2003
www.padovaboy.it
Intanto ti faccio notare che tu stai parlando di Javascript e NON di ASP, ne tantomento di ASP avanzato...
venendo alla tua domanda:
posTop e posLeft sono 2 style che riportano in pixel la distanza di un oggetto il cui posizionamento è assoluto (position:absolute) e rispetto al body.
Ora non ricordo un modo più elegante ma questo funziona abbastanza bene:
var leftpos = 0;
var toppos = 0;
var el = inputEl;
do {
  el = el.offsetParent;
  leftpos += el.offsetLeft;
  toppos += el.offsetTop;
} while(el.tagName != "BODY");


In pratica il codice non fa altro che ciclare su tutti gli elementi genitori partendo dall'input passato. Per ogni elemento ne calcola l'offeset e lo incrementa fino a raggiungere il body (punto zero per intenderci).

Funziona sia per IE sia per FF.

www.padovaboy.it dal 2001 con furore :D

Torna al forum | Feed RSS

ASPItalia.com non è responsabile per il contenuto dei messaggi presenti su questo servizio, non avendo nessun controllo sui messaggi postati nei propri forum, che rappresentano l'espressione del pensiero degli autori.