per i soloni di js

borgo italia

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
4 Feb 2008
16.044
150
63
PR
www.borgo-italia.it
ciao
una domanda importante ai soloni di js, prendendo spunto da “Rileviamo la risoluzione video del nostro utente”(https://www.mrw.it/javascript/articoli/rileviamo-risoluzione-video-nostro-utente_24.html) (non c’è che dire funziona). Ma credo che la sua utilità sarebbe molto, ma molto maggiore se si potesse non tanto scrivere il suggerimento, ma trasmettere il valore della larghezza alla pagina.
es.

<script language="javascript">
<!--
var altezza = window.screen.height;//quasi non necessaria
var larghezza = window.screen.width;
}
//-->
</script>

È possibile trasmettere il valore
var larghezza => $larghezza (variabile php) e poi scrivere es.

<style….>

#contenitore{
width: <?php echo $larghezza*0.9; ?>;
ecc…….
}

In questo modo sarebbe possibile centrare il div contenitore per qualsiasi larghezza dello schermo.

p.s.
se è possibile la trasmissione uno potrebbe crearsi TUTTE le misure variabili di tutti div, dal contenitore ai contenuti
ma forse chiedo troppo
 
ciao
ora non mi ricordo bene (anche i geni e chi ricopre alte posizioni nel governo fa cilecca), ma c'è un metodo per stampare il valore di una variabile js dentro l'html. qundi perche non in php?

p.s. X alessandro
in un tuo post (attenzione li leggo tutti) hai detto di non essere un grande esperto di js.
io attendo una risposta/accia da i soloni tipo luke o eliox
 
ciao
leggendo qua e la forse (a parte ajax illustre sconoscito per me) forse ho trivato la soluzione.
faccio la pagina index.htm (o php, non ha importanza) e nella pag inserisco solamente

<script type="text/javascript">
lar = screen.width;
alt = screen.height;
if (lar> 0 && alt>0) {
var page = "http://miosito.it/home.php";
window.location.href = page+"?l="+lar+"&a="+alt;
} else
exit();
</script>

poi nella home.php all'inizio metto

<?php

$larg=$_GET['l'];
$alt=$_GET['a'];
//ecc..........

?>
da questi valori poi posso gestirmi tutti i vari div in funzione della larghezza del monitor.

ho ho detto una c....a?
 
No, in effetti no. Puoi benissimo fare così, ma come sistema non è proprio il massimo. A questo punto allora ti consiglio di salvare la risoluzione in un cookie :D

Comunque, grazie, visto che mi hai appena dato dello niubbo da questo momento risponderò a tutti tranne che a te :evil:
 
citazione bibliogrfica
da "aiuto per immagini via fpt" 26-102009, 19.43.41, dichiara l'autore:

Sì. Allora chiedi in area Javascript, come hai visto io non sono proprio un luminare in materia:D

non ho fatto altro che prendere la dichiarazione per vera.

a parte gli scherzi, quindi secondo te al posto di

var page = "http://miosito.it/home.php";
window.location.href = page+"?l="+lar+"&a="+alt;

dovrei creare un cookie? ma come si si crea un cookie in js?
 
ciao
che ne dici di questo?

pagina index.php
HTML:
<script type="text/javascript">
lar = screen.width;
alt = screen.height;
if (lar> 0 && alt>0) {
//i cookie si cancellano all'uscita dal bw
document.cookie = "lar =" + escape(lar);
document.cookie = "alt =" + escape(alt);
var page = "http://miosito.it/home.php";
window.location.href = "http://miosito.it/home.php";
} else
exit();
</script>

pagina home.php e altre pagine
PHP:
if(isset($_COOKIE['lar']) && isset($_COOKIE['alt'])){
	//potrei calcolare la diagonale e poi fare una serie di if elseif else
	$nome_css="";
	$diagonali=array(1280, ......); //diagonali più comuni
	$diagonale=round(sqrt($_COOKIE['lar']^2+$_COOKIE['alt']^2));
	foreach($diagonali as $value){
		//per errore di calcolo
		$min=$value-50;
		$max=$value+50;
		if($diagonale > $min || $diagonale <= $max){
			$nome_css="foglio_".$value.".css";
			//carico il foglio
			break;
		}
	}
}else{
	//carico il css standard es. per 1024x768
}
//se c'è un errore
if($nome_css=""){
	//carico il css standard es. per 1024x768
}
tutta la parte sopra da mettere in un file da includere per ogni pagina del sito
 
Ultima modifica:

Discussioni simili