#ancora che funziona in parte!

artigiano

Nuovo Utente
4 Mag 2008
4
0
0
Ho utilizzato un script che serve a far aprire una determinata pagina in un determinato punto, eccone una sintesi (quella che interessa il post):
Codice:
<script type="text/javascript" language="JavaScript">
	    function Carica() {
        var now = new Date();
		var hours = now.getHours();
		var ancora = ""; altezza = "";
		if(hours >= 6 && hours < 12){ 
		ancora = "m"; 
		altezza = "350px";
		}else if(hours >= 12 && hours < 18){
		ancora = "p"; 
		altezza = "350px";
		}else if(hours >= 18 && hours < 0){
		ancora = "s"; 
		altezza = "350px";	
        }else if(hours >= 0 && hours < 6){
		ancora = "n"; 
		altezza = "350px";
		}

Le pagine relative presentano il seguente codice
Codice:
<div class="ancora"><a name="m">MATTINA</a></div>
<div id="Mattino">

<div class="ancora"><a name="p">POMERIGGIO</a></div>
    <div id="Pome">

<div class="ancora"><a name="s">SERA</a></div>
      <div id="Sera">

<div class="ancora"><a name="n">NOTTE</a></div>
      <div id="Notte">
che è appunto il punto che dovrebbe apparire all'apertura della pagina.

i CSS relativi sono
Codice:
}
#Mattino{
	width: 650px;
	margin-right: auto;
	margin-left: auto;
}
#Pome{
	width: 650px;
	margin-right: auto;
	margin-left: auto;
}
#Sera{
	width: 650px;
	margin-right: auto;
	margin-left: auto;
}
#Notte{
	width: 650px;
	margin-right: auto;
	margin-left: auto;
}

.ancora{
	font-style: italic;
	height: 20px;
	margin-bottom: 10px;
	width: 650px;
	margin-right: auto;
	margin-left: auto;
	text-align: center;
	margin-top: 10px;
}

Qual'è il problema? :crying:

Che al mattino e al pomeriggio tutto funziona regolarmente, a partire dalle 18, quando dovrebbe scattare la sera, in poi si visualizza solo il mattino e in un formato di frame ridotto rispetto al funzionante.
Qualcuno ne capisce l'arcano?
 

PoLe

MRW Moderator
6 Giu 2005
2.198
3
0
40
.: Venezia :.
www.bzconsulting.it
Ciao e benvenuto tra noi :)

L'arcano sta nella condizione della Sera:
else if(hours >= 18 && hours < 0)

La condizione infatti non si verifica mai perchè un numero non può essere maggiore di 18 e nello stesso tempo minore di 0.


Il problema sta tutto li ;)
:byebye:
 

artigiano

Nuovo Utente
4 Mag 2008
4
0
0
Codice:
if(hours >= 6 && hours < 12){ 
		ancora = "m"; 
		altezza = "350px";
		}else if(hours >= 12 && hours < 18){
		ancora = "p"; 
		altezza = "350px";
		}else if(hours >= 18 && hours < 23){
		ancora = "s"; 
		altezza = "350px";	
        }else if(hours >= 0 && hours < 6){
		ancora = "n"; 
		altezza = "350px";
		}

:confused:
 

borgo italia

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
4 Feb 2008
16.046
150
63
PR
www.borgo-italia.it
come al solito scusate l'intromissione

else if(hours >= 18 && hours <= 23)

farà si che la fase "Sera" sia valida fino alle 23.59, poi dalle ore 0.00 automaticamente inizierà la "Notte".

non vorrei dire una czz, ma secondo me <=23 alle 23.00001 passa a notte, secondo me dovrebbe essere

hours>=18 and hours <24 per cui 23 59' 59.998" minore, mentre 24 0' 0" maggiore
 

PoLe

MRW Moderator
6 Giu 2005
2.198
3
0
40
.: Venezia :.
www.bzconsulting.it
...non vorrei dire una czz, ma secondo me <=23 alle 23.00001 passa a notte, secondo me dovrebbe essere

hours>=18 and hours <24 per cui 23 59' 59.998" minore, mentre 24 0' 0" maggiore
No ragazzi, a questo punto non avete capito il concetto di base della faccenda :)

La condizione:
else if(hours >= 18 && hours <= 23)
fa un controllo sul valore di hours.
Bene, la variabile hours non contiene l'ora intera, come per esempio le 23 59' 59.998, ma contiene il valore dell'ora, ovvero ha come valore 23.
Questo lo si deduce da questa riga:
var hours = now.getHours();

Quindi, che siano le 23.01, o le 23.59, hours ha sempre come valore 23.

Ecco spiegato perchè è giusta la condizione che ho postato ieri, che fa si che la condizione si verifichi fino a tutta la durata delle ore 23. Alle ore 0.00, scatterà automaticamente la condizione:
if(hours >= 0 && hours < 6)

Chiaro adesso? :)
 

borgo italia

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
4 Feb 2008
16.046
150
63
PR
www.borgo-italia.it
hai perfettamenta ragione, non mi ero accorto di come veniva inizializzata la variabile, comunque passando da 23 a 0 funziona lo stesso e cosi sembra di non perdere una ora

ciao a tutti
 
Discussioni simili
Autore Titolo Forum Risposte Data
R Tutto su utf-8 ma ancora problemi con i caratteri speciali in mysql MySQL 1
D [WordPress] Link eliminati ancora presenti nel database, è possibile? WordPress 0
L Quanto durerà ancora il flash player? Flash 4
M Href in xml verso ancora posta dentro un iframe XML 0
N Nascondere menu onclick su ancora Javascript 2
F ancora pulsanti HTML e CSS 1
N [RISOLTO]ancora ..passaggio variabili PHP 13
F [risolto] ancora name sul submit HTML e CSS 3
F Evento al secondo click su un ancora jQuery 21
S Accenti, accenti e ancora accenti! MySQL 3
L ancora problemi con wanscam IP Cam e Videosorveglianza 2
K ancora variabili PHP 3
T ancora domande su asp Classic ASP 14
voldemort HTML5 e CSS3: ancora troppo presto? HTML e CSS 3
H Warezone - Musica, Film, Giochi e molto altro ancora! ( ww.jeobiz.eu ) Presenta il tuo Sito 0
M controllare se un utente è ancora collegato. PHP 3
F [JAVA] Ancora problemi con il GregorianCalendar... Java 16
borgo italia ancora email Discussioni Varie 3
borgo italia ancora gli apici Discussioni Varie 11
R link exchange??!? perchè non risulto ancora abilitato? Supporto Mr.Webmaster 4
S dreamweaver MX ancora attuale? Webdesign e Grafica 5
borgo italia ancora ie6 ie7 ff HTML e CSS 3
borgo italia ancora newsletter+phpmailler PHP 3
A swfobject ancora problemi Javascript 0
borgo italia ancora sulle news letter PHP 3
borgo italia ancora sulle espressioni regolari PHP 5
SolidSnake4 ancora problemi di visualizzazione template HTML e CSS 4
Z Accesso amministratori, aggiunta testo e creazione di link con ancora PHP 0
D Una domanda a tutti i webmaster! Quale sito web o idea manca ancora in internet?? Discussioni Varie 5
borgo italia ancora su tutorial immagini php+msql PHP 13
F chiedo ancora aiuto e sper mi possa aiutare qualche anima buona.... Reti LAN e Wireless 0
K Realizzazzione Loghi, Siti, Banner, Indicizzazzione e molto altro ancora Offerte e Richieste di Lavoro e/o Collaborazione 1
A Disattivare l'html - o meglio ancora l'invio di img in un form Classic ASP 12
S scusate ancora PHP 1
L ancora operazioni con decimali Javascript 0
coteaz elemento ancora Javascript 2
B Nome dominio ancora non disponibile??!! Domini 9
J ancora da terminare..... Presenta il tuo Sito 0
G HTML / Configurazione Scripts, Boards / PHP / Traduzioi e altro ancora....... Altri Annunci 0
D ANCORA PROBLEMI dm mx 2004 Windows e Software 0
E Front Page ancora nn c sono Webdesign e Grafica 0
peppoweb Domini .Eu, finalmente si parte Ma per registrarli è ancora presto Domini 0
M ancora sul dso Windows e Software 1
M ancora problemi con il modulo. HTML e CSS 10
D condivisione file via ftp?si fa ancora? Discussioni Varie 0
G Ancora Download come si fa... HTML e CSS 1
peppoweb Ancora MiMail. Torna per rubare Sicurezza e Virus 0
grottafelix ore 01:16 : ancora in piedi! Discussioni Varie 4
M pulsante per aprire una maschera che contiene controllo schede MS Access 0
C Hosting che supportano websocker ed event scheduler Domini 0

Discussioni simili