Calcolare Top e Left in base a Risoluzione

  • Creatore Discussione Creatore Discussione basy82
  • Data di inizio Data di inizio

basy82

Utente Attivo
31 Dic 2005
210
0
0
siracusa
Ciao a tutti sono tornata cn un nuovo problema..

Dalle mie parti si dice: "mi sto cassariando".. :confused:
Allora ho delle variabili top e left di un livello.. che mi ricavo tramite un javascript..

Ho anche la variabile Ris nella quale c'è la risoluzione del monitor dell'utente..
Esempio Ris="800x600"
Mi passo le variabili Top, Left e Ris dentro codice Asp.

Come faccio sapendo la risoluzione dell'utente:
1- se è diversa da 1024x768..Esempio 800x600 devo salvare i valori Top e Left in modo che coincidano come alla ris. 1024x768

2- Fare il processo inverso in lettura dati..Esempio l'utente ha risoluz 800x600, Top e Left(ottimizzati per 1024x768) si devono allineare a 800x600..

In pratica la domanda è: come posso fare a convertire i valori top e Left a seconda della Risoluzione, sapendo che di default sono a 1024x768 !?

Mmmm Forse nn si capisce niente da quel che ho scritto..
 
Forse ho trovato..oggi pom provo se va..

..mi calcolo con questa proporzione la percentuale:
Left:800=x:100 - Top:600=x:100
Quindi:

if Ris<>"1024x768" then
Perc=(Left*100)/800 'so la percentuale
Left=(Left*Perc)/100 'ho il valore di default per Ris. 1024
'...per top la stessa cosa
end if

Dovrebbe andare?
 
Ciao! ;)

Ti dico già che non so se ho capito bene: :p
se non sbaglio vuoi che in base alla risoluzione dello schermo i vari top e left dei window.open si adeguino alla risoluzione dello schermo... giusto?

Ho visto che però il tuo metodo ha bisogno di un valore fisso per la variabile RIS.
Se vuoi puoi fare tutto in semplice javascript, eccoti un esempio
(DA METTERE DOVE DEVI FAR STAMPARE I WINDOW.OPEN):

<a href="javascript:
<script>
if (screen.width==800 && screen.height==600)
{document.write("window.open('pagina.asp','',top=50 left=80 ecc..)")}
if (screen.width==1024 && screen.height==768)
{document.write("window.open('pagina.asp','',top=100 left=150 ecc..)")}
</script>
">nome_link</a>

Secondo me così ti semplifichi la vita alla grande! ;)

Fammi sapere casomai!
SaLuT!
:byebye:

P.S.=Dimenticavo, ovviamente puoi adattare questo script per fare ciò che vuoi, basta che cambi il contenuto dei document.write! ;)
 
Ultima modifica:
Scusatemi non vi ho fatto capire niente..
Mi spiego meglio..
Praticamente mi è stato chiesto un programmino di autocomposizione di template pronti.

L'utente deve essere libero di posizionare la sua foto e il suo testo nella parte di pagina che vuole..
Attraverso un javascript mi sposto la foto che si trova dentro un layer..
<SPAN
style="Z-INDEX: 9; LEFT: <%=Left%>; POSITION: absolute; TOP: <%=Top%>"> <IMG src="../public/<%=MyUser%>/<%=RsFoto("Foto")%>" name="immagine"
border=0
class=drag id="immagine"></SPAN>

Poi (grazie a un suggerimento di Luca cmq..) mi salvo le variabili Top e Left..della nuova posizione.. dentro un db.

Però se lavoro a 1024..Quindi salvo le coordinate e leggo coordinate a 1024..tutto funge

Ma naturalmente cambiando risoluzione, le coordinate top e left, prese dal db, non corrispondono più..

Quindi devo salvare e leggere coordinate alla stessa risoluzione..

Spero di essermi spiegata stavolta..

Cmq oggi provo e calcolare i valori con la percentuale..e vediamo ke succede..:ilpirata:
 
Beh di query non ne faccio solo una..Cmq x leggere la tabella delle foto faccio semplicemente questa query..

Sql="select * from Foto where User='" & MyUser & "' and Link='" & Pagina & "';"

..la variabile pagina è una querystring..a seconda della pagina ke voglio modificare..
Nella tabella Foto ho i campi: user,foto,link,top,left

Quando l'utente che ha fatto il login.. posiziona la foto..precedentemente pubblicata.. - i valori top e left si salvano nel db.
Se posiziono la foto a 1024 e poi la visualizzo a 1024..funziona tutto..ma appena cambio risoluzione la posizione della foto nn corrisponde più...
 
Ultima modifica:
No sono sicurissima.. che i dati sono quelli giusti..anche xkè controllo l'html che genera la pagina asp..
Il fatto è che cambiando la risoluzione, la grandezza della pagina naturalmente è + grande..e le posizioni nn corrisp.
ufff oggi nn ci ho potuto lavorare..sono ferma..quindi
 
Ho trovato dove sbagliavo :ilpirata: !!!!..Position:relative - (mentre prima...scrivendo absolute..top e left prendeva in considerazione l'intera pagina..)adesso mi da le coordinate riferite al body del sito..

<SPAN
style="Z-INDEX: 9; LEFT: <%=Left %>; POSITION: relative; TOP: <%=Top%>"> <IMG src="../public/<%=MyUser%>/<%=RsFoto("Foto")%>" name="immagine"
border=0
class=drag id="immagine"></SPAN>
 

Discussioni simili