HighDots Forums  

far apparire qualcosa dopo n secondi

Javascript (Italian) Il linguaggio JavaScript (it.comp.lang.javascript)


Discuss far apparire qualcosa dopo n secondi in the Javascript (Italian) forum.



Reply
 
Thread Tools Display Modes
  #1  
Old   
Gufo Rosso
 
Posts: n/a

Default far apparire qualcosa dopo n secondi - 05-27-2008 , 02:51 PM






clikko un oggetto <a href=""... id="pippo">Scritta</a>

se lo schiaccio per 3 o 4 secondi vorrei che diventasse

<input type="text" value="scritta">

come faccio a far si che appaia dopo i secondi di pigiatura ?

Reply With Quote
  #2  
Old   
mastro delphine
 
Posts: n/a

Default Re: far apparire qualcosa dopo n secondi - 05-27-2008 , 03:58 PM






Gufo Rosso ha scritto:

Quote:
clikko un oggetto <a href=""... id="pippo">Scritta</a

se lo schiaccio per 3 o 4 secondi vorrei che diventasse

input type="text" value="scritta"

come faccio a far si che appaia dopo i secondi di pigiatura ?
<a
onmousedown="this.clicked_at=new Date().getTime()"
onmouseup="if((new Date().getTime() - this.clicked_at)>2000){boom()}"
href="#">Sono il conttte ddddraaaaaculaaaaaaaa!!!</a>

--
La parola «dialogo», così frequente nel linguaggio politico
italiano, significa ormai patteggiamento, compromesso.
S.Romano


Reply With Quote
  #3  
Old   
Gufo Rosso
 
Posts: n/a

Default Re: far apparire qualcosa dopo n secondi - 05-27-2008 , 05:40 PM



mastro delphine ha scritto:
Quote:
Gufo Rosso ha scritto:

clikko un oggetto <a href=""... id="pippo">Scritta</a

se lo schiaccio per 3 o 4 secondi vorrei che diventasse

input type="text" value="scritta"

come faccio a far si che appaia dopo i secondi di pigiatura ?

a
onmousedown="this.clicked_at=new Date().getTime()"
onmouseup="if((new Date().getTime() - this.clicked_at)>2000){boom()}"
href="#">Sono il conttte ddddraaaaaculaaaaaaaa!!!</a


ho risolto con un latro metodo
onmousedown ....
if(eve.shiftKey){







Reply With Quote
  #4  
Old   
ZER0
 
Posts: n/a

Default Re: far apparire qualcosa dopo n secondi - 05-28-2008 , 02:58 AM



On Tue, 27 May 2008 21:40:37 GMT, Gufo Rosso wrote:

Quote:
se lo schiaccio per 3 o 4 secondi vorrei che diventasse

input type="text" value="scritta"

come faccio a far si che appaia dopo i secondi di pigiatura ?
[cut]

Quote:
ho risolto con un latro metodo
onmousedown ....
if(eve.shiftKey){
Uhm, scusa l'ignoranza, ma non vedo come lo shiftKey ti possa essere
d'ausilio nella problematica che hai posto all'inizio.

--
~ "Io rispetto molto la stupidità umana.
E' la sola cosa che mi dia un'idea dell'eternità."
(Voltaire)



Reply With Quote
  #5  
Old   
ZER0
 
Posts: n/a

Default Re: far apparire qualcosa dopo n secondi - 05-28-2008 , 03:09 AM



On Tue, 27 May 2008 21:58:16 +0200, mastro delphine wrote:

Quote:
clikko un oggetto <a href=""... id="pippo">Scritta</a

se lo schiaccio per 3 o 4 secondi vorrei che diventasse

input type="text" value="scritta"

come faccio a far si che appaia dopo i secondi di pigiatura ?

a
onmousedown="this.clicked_at=new Date().getTime()"
onmouseup="if((new Date().getTime() - this.clicked_at)>2000){boom()}"
href="#">Sono il conttte ddddraaaaaculaaaaaaaa!!!</a
Aaaah! Mi sporchi ignobilmente un oggetto DOM in questo modo, facendo
scattare in IE il subdolo meccanismo delle proprietà expando, al solo
scopo di salvarti un mero timestamp..!
Se proprio devi, almeno dopo "pulisci".. :P

Scherzi a parte, ora sono serio: così facendo però, la funzione viene
invocata se e solo se l'utente rilascia il pulsante e non è detto che
sia quello che vuole l'OP (la richiesta non è chiara, io ad esempio a
naso avrei detto che la scritta dovesse appunto apparire allo scadere
dei 3, 4 secondi; anche se il link lo si sta ancora premendo).

P.S.
"Mhm.. Buona questa cadrega..!"

--
~ Un computer e' fondamentalmente stupido. Non fa cio' che vuoi che
faccia, ma cio' che gli dici di fare.



Reply With Quote
  #6  
Old   
mastro delphine
 
Posts: n/a

Default Re: far apparire qualcosa dopo n secondi - 05-28-2008 , 03:28 AM



ZER0 ha scritto:

Quote:
Aaaah! Mi sporchi ignobilmente un oggetto DOM in questo modo, facendo
scattare in IE il subdolo meccanismo delle proprietà expando, al solo
scopo di salvarti un mero timestamp..!
Se proprio devi, almeno dopo "pulisci".. :P
beh che c'e' di male :P
effettivamente potrebbe non funzionare se l'OP ha settato document.expando
= false;

Quote:
Scherzi a parte, ora sono serio: così facendo però, la funzione viene
invocata se e solo se l'utente rilascia il pulsante e non è detto che
sia quello che vuole l'OP (la richiesta non è chiara, io ad esempio a
naso avrei detto che la scritta dovesse appunto apparire allo scadere
dei 3, 4 secondi; anche se il link lo si sta ancora premendo).
certo, dipende da quale behavior desidera esattamente. Quel che tu
suggerisci e' il comportamento tipico delle etichette dei nomi dei file nei
file manager come Explorer, Finder etc.

<a
onmousedown="this.interval = setTimeout('make_editable()', DELAY)"
onmouseup="if (this.interval) clearInterval(this.interval);
this.interval=null"
onmouseout="if (this.interval) clearInterval(this.interval);
this.interval=null"
href="#">Rocco e i suoi fratelli.avi</a>

Quote:
"Mhm.. Buona questa cadrega..!"
LOL

--
La parola «dialogo», così frequente nel linguaggio politico
italiano, significa ormai patteggiamento, compromesso.
S.Romano


Reply With Quote
  #7  
Old   
ZER0
 
Posts: n/a

Default Re: far apparire qualcosa dopo n secondi - 05-28-2008 , 03:39 AM



On Wed, 28 May 2008 09:28:16 +0200, mastro delphine wrote:

Quote:
Aaaah! Mi sporchi ignobilmente un oggetto DOM in questo modo, facendo
scattare in IE il subdolo meccanismo delle proprietà expando, al solo
scopo di salvarti un mero timestamp..!
Se proprio devi, almeno dopo "pulisci".. :P

beh che c'e' di male :P
effettivamente potrebbe non funzionare se l'OP ha settato document.expando
= false;
Eggià. Come è noto, purtroppo IE ha due pesi e due misure per quanto
riguarda gli oggetti JS e gli oggetti DOM.

Quote:
Scherzi a parte, ora sono serio: così facendo però, la funzione viene
invocata se e solo se l'utente rilascia il pulsante e non è detto che
sia quello che vuole l'OP (la richiesta non è chiara, io ad esempio a
naso avrei detto che la scritta dovesse appunto apparire allo scadere
dei 3, 4 secondi; anche se il link lo si sta ancora premendo).

certo, dipende da quale behavior desidera esattamente.
Infatti, la richiesta non è chiarissima.

Quote:
suggerisci e' il comportamento tipico delle etichette dei nomi dei file nei
file manager come Explorer, Finder etc.
Ho OS X anche io.
Quote:
a
onmousedown="this.interval = setTimeout('make_editable()', DELAY)"
onmouseup="if (this.interval) clearInterval(this.interval);
this.interval=null"
onmouseout="if (this.interval) clearInterval(this.interval);
this.interval=null"
Aaaah! Ancora l'expando! ;D
Seriamente: dato che stai impostando un timeout direi di cambiare il
nome alla proprietà; e utilizzare "clearTimeout()". Inoltre, puoi
passare direttamente un riferimento a funzione:

setTimeout( make_editable, DELAY );

Quote:
href="#">Rocco e i suoi fratelli.avi</a
E ti guardi queste cose di prima mattina..? Non ti farà male? :P

--
~ "It may be that the old astrologers had the truth exactly reversed,
when they believed that the stars controlled the destinies of men.
The time may come when men control the destinies of stars."
(Arthur C. Clarke)



Reply With Quote
  #8  
Old   
mastro delphine
 
Posts: n/a

Default Re: far apparire qualcosa dopo n secondi - 05-28-2008 , 03:47 AM



ZER0 ha scritto:

Quote:
Ho OS X anche io.
ah, come procede la macchizzazione?

Quote:
Aaaah! Ancora l'expando! ;D
Seriamente: dato che stai impostando un timeout direi di cambiare il
nome alla proprietà; e utilizzare "clearTimeout()".
lapsus freudiano..

Quote:
Inoltre, puoi
passare direttamente un riferimento a funzione:

setTimeout( make_editable, DELAY );
ricordo che alcune versioni di IE non supportano questa sintassi, ma se lo
dici tu... fosse per me passerei anche i parametri dal 3o in avanti.

Quote:
href="#">Rocco e i suoi fratelli.avi</a

E ti guardi queste cose di prima mattina..? Non ti farà male? :P
tutti a pensar male... e' un film neorealista di Luchino Visconti ;P

--
La parola «dialogo», così frequente nel linguaggio politico
italiano, significa ormai patteggiamento, compromesso.
S.Romano


Reply With Quote
  #9  
Old   
ZER0
 
Posts: n/a

Default Re: far apparire qualcosa dopo n secondi - 05-28-2008 , 04:15 AM



On Wed, 28 May 2008 09:47:00 +0200, mastro delphine wrote:

Quote:
Ho OS X anche io.

ah, come procede la macchizzazione?
Beh, ormai è un paio d'anni che ce l'ho, ma devo esser sincero. Per il
momento lo sto usando unicamente da "utente", non da sviluppatore.
Anche se alla fine mi sono "piegato" al TextMate, ho configurato XCode
per sviluppare in j2me e ho pure buttato un occhio a Python per via di
XChat.

Quote:
Inoltre, puoi
passare direttamente un riferimento a funzione:

setTimeout( make_editable, DELAY );

ricordo che alcune versioni di IE non supportano questa sintassi,
Si, le versioni di IE prima della 3; ma credo che possiamo fregarcene.


Quote:
fosse per me passerei anche i parametri dal 3o in avanti.
Eh no, questo invece non si può fare.. O meglio, puoi anche passare il
terzo parametro, ma in IE identifica il linguaggio di scripting; e non
il parametro della funzione invocata.
Tramite una sorta di currying comunque, si può rendere più standard il
comportamento di IE. Ma devi creare delle closure (almeno una).

Quote:
href="#">Rocco e i suoi fratelli.avi</a

E ti guardi queste cose di prima mattina..? Non ti farà male? :P

tutti a pensar male... e' un film neorealista di Luchino Visconti ;P
Sei tu il malpensante..! ;P Io ho solo detto che vedere quel genere di
cose di prima mattina non è propriamente salutare. :P

--
~ "When you have eliminated the impossible, whatever remains, however
improbable, must be the truth." (S.H.)



Reply With Quote
Reply




Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

vB code is On
Smilies are On
[IMG] code is On
HTML code is Off



Powered by vBulletin Version 3.5.4
Copyright ©2000 - 2008, Jelsoft Enterprises Ltd.