WebSite X5Help Center

 
Pasqualino D.
Pasqualino D.
User

Javascript  it

Автор: Pasqualino D.
Просмотрено 1972, Подписчики 1, Размещенный 0  

Ho questo codice javascript "che funziona" ma vorrei che al posto della scritta, potessi fare in modo che un'immagine sparisse alla fine del conteggio, qualcuno sà come fare? Grazie in anticipo.

<script type="text/javascript">
/*countdown - conto alla rovescia*/
function countdown()
{
var_anno=2014;
var_mese=10;
var_giorno=26;
var_ore=21;
var_minuti=0;
var_secondi=0;
data_scandeza= new Date(var_anno,var_mese-1,var_giorno,var_ore,var_minuti,var_secondi);
data_oggi= new Date();
differenza=(data_scandeza-data_oggi);
giorni=parseInt(differenza/86400000);
differenza=differenza-(giorni*86400000);
ore=parseInt(differenza/3600000);
differenza=differenza-(ore*3600000);
minuti=parseInt(differenza/60000);
differenza=differenza-(minuti*60000);
secondi=parseInt(differenza/1000);
differenza=differenza-(secondi*1000);
if (giorni <= "0" && ore <= "0" && minuti <= "0" && secondi <= "0")
{
document.getElementById("countdown")[removed]="OPS, Tempo scaduto";
}
else
{
document.getElementById("countdown")[removed]=giorni +' giorni '+ore+' ore '+minuti+' min '+secondi+' sec';
setTimeout("countdown()",1000)

}
}
</script>

<body onload="countdown()"><div id="countdown"></div>

Размещено
23 Ответы - 1 Корректно
Pasqualino D.
Pasqualino D.
User
Автор

Scusate... Questo è il codice completo

<script type="text/javascript">
/*countdown - conto alla rovescia*/
function countdown()
{
var_anno=2014;
var_mese=10;
var_giorno=26;
var_ore=21;
var_minuti=0;
var_secondi=0;
data_scandeza= new Date(var_anno,var_mese-1,var_giorno,var_ore,var_minuti,var_secondi);
data_oggi= new Date();
differenza=(data_scandeza-data_oggi);
giorni=parseInt(differenza/86400000);
differenza=differenza-(giorni*86400000);
ore=parseInt(differenza/3600000);
differenza=differenza-(ore*3600000);
minuti=parseInt(differenza/60000);
differenza=differenza-(minuti*60000);
secondi=parseInt(differenza/1000);
differenza=differenza-(secondi*1000);
if (giorni <= "0" && ore <= "0" && minuti <= "0" && secondi <= "0")
{
document.getElementById("countdown")[removed]="OPS, Tempo scaduto";
}
else
{
document.getElementById("countdown")[removed]=giorni +' giorni '+ore+' ore '+minuti+' min '+secondi+' sec';
setTimeout("countdown()",1000)

}
}
</script>

<body onload="countdown()"><div id="countdown"></div>

</script>
</head>
<body onLoad="Countdown()">
<div id="testo"></div>
</body>
</html>

Читать больше
Размещено От Pasqualino D.
 ‪ KolAsim ‪ ‪
 ‪ KolAsim ‪ ‪
Moderator

1) - come prima istruzione metti la stringa in grassetto:
<script type="text/javascript">
function chiudi() { document.getElementById('pippo').style.display = "none"; } 
/*countdown - conto alla rovescia*/
...ECCETERA...

2) - dopo il messaggio del tempo scaduto metti la stringa in grassetto:
OPS, Tempo scaduto";
chiudi();
...
...
... l'immagine nel BODY la carichi così:
<img id="pippo" src="percorso/tuaimmagine.jpg" />

...
.


ciao

Читать больше
Размещено От  ‪ KolAsim ‪ ‪
Pasqualino D.
Pasqualino D.
User
Автор

Ok funziona, soltanto che all'avvio della pagina con il tempo scaduto per un secondo vedo l'immagine poi sparisce

Читать больше
Размещено От Pasqualino D.
 ‪ KolAsim ‪ ‪
 ‪ KolAsim ‪ ‪
Moderator

... io non ho il programma, ...ma in teoria non dovrebbe avvenire questo flash dell'immagine...

... lo SCRIPT lo hai inserito in HEAD, ...o dove...?...

... hai un LINK per provare...?...

.

ciao

Читать больше
Размещено От  ‪ KolAsim ‪ ‪
 ‪ KolAsim ‪ ‪
 ‪ KolAsim ‪ ‪
Moderator

... no! ... hai fatto degli errori; ...per evidenziarli copia la stringa a seguire, tutto il rigo per intero, e la incolli nella barra indirizzi di FireFox, e li vedrai in rosso:

view-source:http://dtstudio.altervista.org/

...

... rimedio:

.1 ... il codice SCRIPT del COUNTDOWN lo devi inserire nel Pannello Esperto |  HEAD/HEAD

.2 ... il codice dell'immagine lo devi inserire in un Oggetto HTML dell'Intestazione (pergamena), se è lì che la vuoi;

.3 ... il codice ONLOAD (e solo: onload="countdown()") lo devi inserire nel Pannello Esperto | Proprietà del tag BODY (ovvero all'interno dell'istruzione <BODY>), quindi non nell'opzione: Dopo l'apertura del tag BODY, Prima della chiusura del tag BODY (!NO!)

... considera sempre che io sono senza programmi, ...ma quando avrai sistemato, fallo sapere, in modo da andare a  controllare se la persistenza flash dell'immagine si verifichi ancora...

.

ciao

Читать больше
Размещено От  ‪ KolAsim ‪ ‪
Pasqualino D.
Pasqualino D.
User
Автор

Ciao mirko.. si avevo gia provato in quel modo, ma ogni volta che ricarichi la pagina si riapre l'mmagine, io ho bisogno che oltre una certa data non appaia più

Читать больше
Размещено От Pasqualino D.
Mirko Boschetti
Mirko Boschetti
Moderator

potresti inserire il popup con cookie, e poi alla data che decidi tu, lo dovrai togliere con il programma, e intanto risolveresti....fin che non trovi una soluzione.... ....questo un'esempio utile:

http://stesil.altervista.org/evo10/cookie/index.html

Читать больше
Размещено От Mirko Boschetti
Pasqualino D.
Pasqualino D.
User
Автор
 ‪ KolAsim ‪ ‪
... no! ... hai fatto degli errori; ...per evidenziarli copia la stringa a seguire, tutto il rigo per intero, e la incolli nella barra indirizzi di FireFox, e li vedrai in rosso: view-source:http://dtstudio.altervista.org/ ... ... rimedio: .1 ... il codice SCRIPT del COUNTDOWN lo devi inserire nel Pannello Esperto |  HEAD/HEAD .2 ... il codice dell'immagine lo devi inserire in un Oggetto HTML dell'Intestazione (pergamena), se è lì che la vuoi; .3 ... il codice ONLOAD (e solo: onload="countdown()") lo devi inserire nel Pannello Esperto | Proprietà del tag BODY (ovvero all'interno dell'istruzione <BODY>), quindi non nell'opzione: Dopo l'apertura del tag BODY, Prima della chiusura del tag BODY (!NO!) ... considera sempre che io sono senza programmi, ...ma quando avrai sistemato, fallo sapere, in modo da andare a  controllare se la persistenza flash dell'immagine si verifichi ancora... . ciao

forse ho sbagliato qualcosa?

http://dtstudio.altervista.org/

Читать больше
Размещено От Pasqualino D.
 ‪ KolAsim ‪ ‪
 ‪ KolAsim ‪ ‪
Moderator
P. Della Torre
 ‪ ... ... ...  ... ... ... forse ho sbagliato qualcosa?http://dtstudio.altervista.org/

... sì ... errato ...

... rispetta quello che ti avevo indicato; ...casomai spiegami cosa non ti è chiaro...

.. lo riassumo:

1 - lo SCRIPT deve andare nella sezione HEAD;

2 - ONLOAD nella dichiarazione del BODY e non nel corpo del BODY

3 - il DIV del testo, se lo vuoi vedere deve andare in un oggetto HTML qualsiasi posizionato dove vuoi nelle sezioni della pagina;

4 - il codice IMMAGINE deve andare in Oggetto HTML dell'Intestazione, o il atro Oggetto Codice HTML della Pagina;

... nella pagina deve esistere solo una coppia di HEAD/HEAD, BODY/BODY, HTML/HTML...

... questa  la struttura:

<html><head>...</head><body (...)> ... </body></html>

... attualmente è tutto un po' scombinato per codici esterni inseriti da te...

... controlla con FireFox come detto prima...

... prova; si tratta di individuare nel programma le sezioni corrette, e non è difficile...

... non ti preoccupare a chiedere, magari nello specifico dell'azione che fai...

.

ciao

Читать больше
Размещено От  ‪ KolAsim ‪ ‪
Pasqualino D.
Pasqualino D.
User
Автор

Allora riepiloghiamo:

1) Prima della chiusura del tag HEAD

function countdown()
{

var_anno=2014;
var_mese=10;
var_giorno=26;
var_ore=14;
var_minuti=54;
var_secondi=0;
data_scandeza= new Date(var_anno,var_mese-1,var_giorno,var_ore,var_minuti,var_secondi);
data_oggi= new Date();
differenza=(data_scandeza-data_oggi);
giorni=parseInt(differenza/86400000);
differenza=differenza-(giorni*86400000);
ore=parseInt(differenza/3600000);
differenza=differenza-(ore*3600000);
minuti=parseInt(differenza/60000);
differenza=differenza-(minuti*60000);
secondi=parseInt(differenza/1000);
differenza=differenza-(secondi*1000);
if (giorni <= "0" && ore <= "0" && minuti <= "0" && secondi <= "0")
chiudi();
else
{
setTimeout("countdown()",1000)
}
}
</script>

2) Proprietà deltag BODY

Читать больше
Размещено От Pasqualino D.
Pasqualino D.
Pasqualino D.
User
Автор

In pratica :

1) Prima della chiusura del tag HEAD

function countdown()

2) Nella proprietà del tag BODY

Читать больше
Размещено От Pasqualino D.
 ‪ KolAsim ‪ ‪
 ‪ KolAsim ‪ ‪
Moderator

... OK ... bravo ... ce l'hai fatta ...!... QUASI ...!... 

... adesso devi riparare gli ultimi errori...

1) ... devi inserire <script> prima della funzione function countdown(), così:

<script> function countdown()  ...eccetera...eccetera

2) ... devi racchiudere la funzione chiudi() tra le graffe "{ }", così:

{ chiudi(); }

...

... fatto; ... ... e vai ... ... .. .. . .

.... 

Читать больше
Размещено От  ‪ KolAsim ‪ ‪
Pasqualino D.
Pasqualino D.
User
Автор

Scusa ma la "Function chiudi()" dov'è?

Читать больше
Размещено От Pasqualino D.
Pasqualino D.
Pasqualino D.
User
Автор

dove la metto sopra la function countdown()

Читать больше
Размещено От Pasqualino D.
 ‪ KolAsim ‪ ‪
 ‪ KolAsim ‪ ‪
Moderator
P. Della Torre
Scusa ma la "Function chiudi()" dov'è?

... non avevo notato che nell'ultimo codice l'avevi dimenticata, per come ti avevo detto al 1° Post in alto; ...quindi devi cominciare così:

<script>
function chiudi() { document.getElementById('pippo').style.display = "none"; } /*countdown - conto alla rovescia*/
function countdown() {
ECCETERA

.

... questo: chiudi(); } ...vedo che l'hai messo a posto...

.

... vai con l'ultimo sforzo...

.

ciao

Читать больше
Размещено От  ‪ KolAsim ‪ ‪
Pasqualino D.
Pasqualino D.
User
Автор

Ok ma l'immagine si vede nonostante il tempo sia scaduto..

Читать больше
Размещено От Pasqualino D.
 ‪ KolAsim ‪ ‪
 ‪ KolAsim ‪ ‪
Moderator

... non: onload="Countdown()"

...  ma: onload="countdown()"

.

ciao

Читать больше
Размещено От  ‪ KolAsim ‪ ‪
Pasqualino D.
Pasqualino D.
User
Автор

Ok ma siamo al punto di partenza.. l'immagine si vede per un secondo poi sparisce. Io penso che prima di far vedere l'immagine dovrebbe eseguire la funzione altrimenti l'immagine si vede a ausa del "setTimeout("countdown()",1000)" e poi sparisce.

Читать больше
Размещено От Pasqualino D.
 ‪ KolAsim ‪ ‪
 ‪ KolAsim ‪ ‪
Moderator

... per verificare ho dovuto fare una prova con il blocco note, ed ho notato che con una immagine leggera è tutto regolare, invece con una immagina più pesante effettivamente appare l'immagine per un flash...
... esempio originale di base con solo la mia funzione chiudi():  
http://www.zspace.it/kolasim/countdownWPK/countdown-img1.html
... esempio rivisto aggiungendo lo style display none:  
http://www.zspace.it/kolasim/countdownWPK/countdown-img2.html
...
... quindi, inserire in HEAD:
<style> #pippo { display:none; } </style>

... e come ultima istruzione dello SCRIPT la stringa dopo setTimeout:
setTimeout("countdown()",1000);
document.getElementById('pippo').style.display = "block";
...
... puoi vedere il codice direttamente nel sorgente HTML della pagina...
...
.... e così dovresti essere a posto...
.


ciao


===EDIT=====

... per provare i mio countdown setta provvisoriamente l'orologio del PC alle ore 10 e minuti 20 (di oggi)

Читать больше
Размещено От  ‪ KolAsim ‪ ‪
Pasqualino D.
Pasqualino D.
User
Автор

Funziona! Grazie di tutto

Читать больше
Размещено От Pasqualino D.