Torna indietro   Hardware Upgrade Forum > Software > Programmazione

WoW Forever: la beta è stato uno dei momenti più alti della storia dei videogiochi, e non si ripeterà
WoW Forever: la beta è stato uno dei momenti più alti della storia dei videogiochi, e non si ripeterà
Un mondo affollato e vivo, personaggi destinati a sparire a fine test e nessuno a inseguire l'oggetto giusto. Beta e stress test di World of Warcraft: Forever hanno fatto emergere un roleplay spontaneo, tra danze a Goldshire e code ordinate ai PNG
Oracle AI World 2026: in Europa prima la sovranità, poi la sicurezza e solo dopo l'IA
Oracle AI World 2026: in Europa prima la sovranità, poi la sicurezza e solo dopo l'IA
In tre giorni a Las Vegas Oracle ha presentato agenti che eseguono il lavoro, l'alleanza con OpenAI e un cloud aperto agli acceleratori di tutti. Ma i clienti europei chiedono garanzie prima ancora delle funzionalità
DS N°7 E-Tense: il SUV premium made in Melfi che punta su autonomia e comfort
DS N°7 E-Tense: il SUV premium made in Melfi che punta su autonomia e comfort
Fino a 740 km WLTP con la batteria da 97,2 kWh, sospensioni che leggono la strada con una telecamera e un abitacolo da salotto parigino. La nuova DS N°7 raccoglie l'eredità della DS 7 e la porta, per la prima volta, nel mondo 100% elettrico. Ecco come è fatta, cosa offre e quanto costa.
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 01-08-2019, 13:47   #1
robertino_salemi
Senior Member
 
L'Avatar di robertino_salemi
 
Iscritto dal: Apr 2009
Città: Aci Catena (CT)
Messaggi: 1021
Bootstrap alert: usare lo stesso div per due messaggi consecutivi

Ciao ragazzi,
ho creato una semplice funzione che richiamo per visaulizzare dei messaggi all'utente:
Codice:
function showMessageEvent(textToShow, cssClass) {
    $("#resultMessageEvent").fadeOut("slow", function () {
        $("#resultMessageEvent").addClass(cssClass);
        $("#resultMessageEvent").html(textToShow);
    });

    $("#resultMessageEvent").show("slow").delay(3000).fadeOut("slow", function () {
        $("#resultMessageEvent").removeClass(cssClass);
        $("#resultMessageEvent").html("");
    });
}
Esempio:
Primo messaggio:
showMessageEvent("Caricamento in corso...", "alert-warning");

Se la chiamata Ajax è success, il secondo messaggio:
showMessageEvent("Evento aggiornato!", "alert-success");

Succede che vengono rimossi la classe e il test riferiti al caso warning e solo dopo viene visualizzato il div success senza testo!

Come mai?

Grazie.
robertino_salemi è offline   Rispondi citando il messaggio o parte di esso
Old 01-08-2019, 15:51   #2
Kaya
Senior Member
 
Iscritto dal: Apr 2005
Messaggi: 3302
Ho buttato qua un jksfiddle di test https://jsfiddle.net/cm3g97j2/

Onestamente non ho capito cosa ti aspetti che faccia e che non fa..
Kaya è offline   Rispondi citando il messaggio o parte di esso
Old 02-08-2019, 09:20   #3
robertino_salemi
Senior Member
 
L'Avatar di robertino_salemi
 
Iscritto dal: Apr 2009
Città: Aci Catena (CT)
Messaggi: 1021
Grazie sempre!

Ho commentato alcune righe del tuo script riportandolo al mio caso
https://jsfiddle.net/robertinosalemi/urw04h51/3/

Gli step che vorrei realizzare:
1. Viene visualizzato il primo messaggio
2. Nella funzione showMessageEvent è impostato un delay di 3 secondi, ma vorrei comunque che dopo 1 secondo, venga nascosto il primo e visualizzato il secondo...
robertino_salemi è offline   Rispondi citando il messaggio o parte di esso
Old 02-08-2019, 11:37   #4
Kaya
Senior Member
 
Iscritto dal: Apr 2005
Messaggi: 3302
Scusa ma non comprendo: se metti un delay di 3 secondi come puoi impostare che vada via dopo 1 secondo?
vuoi che si nasconda di colpo mentre fa il fadeout dopo 1 secondo ?

non comprendo proprio..
Kaya è offline   Rispondi citando il messaggio o parte di esso
Old 02-08-2019, 12:29   #5
robertino_salemi
Senior Member
 
L'Avatar di robertino_salemi
 
Iscritto dal: Apr 2009
Città: Aci Catena (CT)
Messaggi: 1021
Forse mi sono spiegato male, scusami.

Vorrei che:
1. l'utente clicca su Inserisci nel form
2. scatta una chiamata ajax che esegue i dovuti controlli e visualizza un messaggio del tipo "Caricamento in corso..."
3. se la chiamata torna success.... qualora il messaggio precedente è ancora visibile, viene nascosto e viene visualizzato il messaggio "Evento inserito".
robertino_salemi è offline   Rispondi citando il messaggio o parte di esso
Old 05-08-2019, 11:53   #6
aksh37
Junior Member
 
Iscritto dal: Jan 2015
Messaggi: 12
Non é la soluzione migliore, ma comunque devi fare uso delle Promises.
Se usi jQuery, se mi ricordo bene, le richieste AJAX ritornano una Promise.

https://jsfiddle.net/aob4v1nj/
aksh37 è offline   Rispondi citando il messaggio o parte di esso
Old 06-08-2019, 08:52   #7
Kaya
Senior Member
 
Iscritto dal: Apr 2005
Messaggi: 3302
Quote:
Originariamente inviato da robertino_salemi Guarda i messaggi
Forse mi sono spiegato male, scusami.

Vorrei che:
1. l'utente clicca su Inserisci nel form
2. scatta una chiamata ajax che esegue i dovuti controlli e visualizza un messaggio del tipo "Caricamento in corso..."
3. se la chiamata torna success.... qualora il messaggio precedente è ancora visibile, viene nascosto e viene visualizzato il messaggio "Evento inserito".
Secondo me hai sbagliato approccio.
Per fare quello che vuoi devi:
chiamare la funzione show, e al suo interno quando è completata allora richiami lo script esterno che fa quello che deve fare e controllando quello che ti ritorna mostrare success oppure errore.
Rapidamente dovrebbe essere
Codice:
$( "#clickme" ).click(function() {
  $( "#book" ).show( "slow", function() {
//qua dentro la funzione show ha finito, richiami lo script che fa i controlli:
$.post( "test.php", { name: "John", time: "2pm" })
  .done(function( data ) {
if (data.controlloIsOk == 1){ 
    $("#resultMessageEvent").html("OK VA TUTTO BENE. ANCHE CON FADEOUT"); 
 } else {
    $("#resultMessageEvent").html("NO ERRORE " + data.messaggioErrore); 
}
  });
  });
});
Spero di essermi spiegato
Kaya è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


WoW Forever: la beta è stato uno dei momenti più alti della storia dei videogiochi, e non si ripeterà WoW Forever: la beta è stato uno dei mome...
Oracle AI World 2026: in Europa prima la sovranità, poi la sicurezza e solo dopo l'IA Oracle AI World 2026: in Europa prima la sovrani...
DS N°7 E-Tense: il SUV premium made in Melfi che punta su autonomia e comfort DS N°7 E-Tense: il SUV premium made in Melfi...
Recensione Samsung Galaxy Tab S12 Ultra: non chiamatelo tablet... è molto di più Recensione Samsung Galaxy Tab S12 Ultra: non chi...
Hyundai IONIQ 5 N, l'elettrica che finge di essere termica (e ci riesce da paura) Hyundai IONIQ 5 N, l'elettrica che finge di esse...
Gli USA dipendono dai robot stranieri: T...
Volkswagen non ha più soldi per l...
Telescopio spaziale Hubble: la NASA cerc...
Più sottile e potente: le nuove i...
Il JPL estende la vita operativa della s...
DAZN Full è in offerta: tutta la ...
GTA 6 su PC potrebbe arrivare prima del ...
Da zero al tracciato in secondi: LibreCo...
Il regista Rian Johnson lancia a 12,99 d...
Microsoft stravolge l'app Sicurezza di W...
Mercato smartphone in caduta libera: -20...
Android 17 QPR3 Beta 3 riporta il blocco...
Le 10 offerte TOP in Amazon del weekend:...
Dyson, doppio crollo su Amazon: purifica...
Il 70% delle imprese non vede effetti de...
Chromium
GPU-Z
OCCT
LibreOffice Portable
Opera One Portable
Opera One 106
CCleaner Portable
CCleaner Standard
Cpu-Z
Driver NVIDIA GeForce 546.65 WHQL
SmartFTP
Trillian
Google Chrome Portable
Google Chrome 120
VirtualBox
Tutti gli articoli Tutte le news Tutti i download

Strumenti

Regole
Non Puoi aprire nuove discussioni
Non Puoi rispondere ai messaggi
Non Puoi allegare file
Non Puoi modificare i tuoi messaggi

Il codice vB è On
Le Faccine sono On
Il codice [IMG] è On
Il codice HTML è Off
Vai al Forum


Tutti gli orari sono GMT +1. Ora sono le: 21:26.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Served by www3v