Pagina 1 di 4
Mettere tempo all'onclick
Inviato: 08/10/2015, 19:33
da frank
Intenderei fare una cosa del genere: quando si clicca, l'onclick richiama una funzione a tempo che tiene nascosta la frase fino a quando non si ricarica la pagina. Com'è adesso come clicco il link la frase scompare e ricompare subito.
La frase completa è suddivisa con 3 id è: Stai provando i permessi di un utente / Ripristina permessi
Codice: Seleziona tutto
<!-- IF U_RESTORE_PERMISSIONS -->
<span style="color:#ff0000; margin-left:10px;"><span id="restorePerm">Stai provando i permessi di un utente</span></span><span id="restorePermX"> /</span><a id="restorePermXX" style="margin-left:-15px;" href="{U_RESTORE_PERMISSIONS}" onclick="document.getElementById('restorePerm').style.visibility='hidden',getElementById('restorePermX').style.visibility='hidden',getElementById('restorePermXX').style.visibility='hidden',style.textDecoration='none';">{L_RESTORE_PERMISSIONS}</a>
<!-- ENDIF -->
Re: Mettere tempo all'onclick
Inviato: 08/10/2015, 20:14
da brunino
Prova a sostituire le virgole con punti e virgola, alla fine delle funzioni
Inviato dal mio MotoE2(4G-LTE) utilizzando Tapatalk
Re: Mettere tempo all'onclick
Inviato: 08/10/2015, 20:24
da frank
E' uguale, al cick sparisce e torna
Re: Mettere tempo all'onclick
Inviato: 08/10/2015, 21:10
da brunino
E torna in che senso? Torna quando?
Inviato dal mio MotoE2(4G-LTE) utilizzando Tapatalk
Re: Mettere tempo all'onclick
Inviato: 08/10/2015, 21:17
da frank
Intendo che al primo click scompare e si ripresenta, al secondo non si ripresenta più.
Re: Mettere tempo all'onclick
Inviato: 08/10/2015, 22:33
da Sir Xiradorn
Per il tempo usa setTimeout
Re: Mettere tempo all'onclick
Inviato: 08/10/2015, 23:55
da frank
Non è facile abbinarlo al mio codice
Re: Mettere tempo all'onclick
Inviato: 09/10/2015, 0:24
da Sir Xiradorn
E perchè? Scusa devi fare quello che fai con un click? Bene fai lo stesso con il teme out. E poi se metti sempre tutto il codice inline non ci capirai più nulla. Non te lo dico per far il rompiscatole ma perchè così hai html mischiato a css e innesti di javascritpt che tra l'altro aggiungono altro css. Una pastrocchione praticamente.
Vuoi un consiglio che ti scrivo a caratteri cubitali: IMPARA A SE-PA-RA-RE
Sembra una formalità ma finchè fai due modifiche a volo bene ma quando le cose si complicano non ti trovi più.
Impara a mettere js e css negli appositi tag e a raggiungere i target da la. La pagina sarà più veloce da caricare e più ordinata. Anche sul tuo forum hai pezzi di codice qua e la e si traduce in una pagina che carica a pezzi.
Torniamo a noi. Quello che tu richiedi è questo. Hai biisogno di una funzione di qusto tipo
Codice: Seleziona tutto
setTimeout(---funzione---, --- tempo in millisecondi ---);
nella --- funzione --- ci devi mettere una funzione appunto che ti permette di richiamare il click. Fai quindi qualcosa del tipo:
Codice: Seleziona tutto
<script type="text/javascript">
var target;
target = "raggiungi il target tramite il dom e il suo id se ne ha uno";
// esempio a quanto vedo hai questo id restorePermXX
// document.getElementById('restorePermXX');
// da questo fai si che quando clicci proprio su questo avrai qualcosa del genere
// target.onclick = miaFunzione;
/* Definisci qua la funzione */
function miaFunzione() {
/// codice ...
// potrebbe essere una cosa del tipo
// var obiettivo = "obiettivo che devi raggiungere dal codice";
/// qua definisci il time out
/* setTimeout(function(){
obiettivo.style.visibility = "hidden";
}, tempio_in_millisecondi); */
}
</script>
Quindi puoi pure rimuovere l'onclick dal bottone tanto lo hai già definito nella funzione. Questa è la via da perseguire. Abituati a procedere così
Re: Mettere tempo all'onclick
Inviato: 09/10/2015, 0:33
da frank
Non ci ho capito tantissimo. Mettiamo che questa parte deve sparire all'onclick, che ci metto?
<span id="restorePerm">Stai provando i permessi di un utente</span>
Re: Mettere tempo all'onclick
Inviato: 09/10/2015, 4:08
da frank
Più di così non so
Codice: Seleziona tutto
<script>
var target;
target = "document.getElementById('restorePermXX');
function miaFunzione() {
var obiettivo = "obiettivo che devi raggiungere dal codice";
setTimeout(function() {
obiettivo.style.visibility = "hidden";
}, 1000);
}
</script>
<!-- IF U_RESTORE_PERMISSIONS -->
<span style="color:#ff0000; margin-left:10px;"><span id="restorePerm">Stai provando i permessi di un utente</span></span><span id="restorePermX"> /</span><a id="restorePermXX" style="margin-left:-15px;" href="{U_RESTORE_PERMISSIONS}, document.getElementById('restorePerm').style.visibility='hidden',getElementById('restorePermX').style.visibility='hidden',getElementById('restorePermXX').style.visibility='hidden',style.textDecoration='none';">{L_RESTORE_PERMISSIONS}</a>
<!-- ENDIF -->