2010-05-30 19 views
5

Come posso distruggere una finestra di dialogo dopo un certo numero di secondi ?????Jquery distrugge la finestra di dialogo dopo x secondi

Questo è il mio codice:

<script type="text/javascript"> 
$(function() { 
    $(".dialog-message").dialog({ 
    modal: true, 
    buttons: { 
    Ok: function() { 
    $(this).dialog('close'); 
    } 
    } 
    }); 
}); 

</script> 
+4

Questionmarks non sono bestia da basto:/ – LukeN

risposta

4
$(function() { 
var dialog = $(".dialog-message").dialog({ 
    modal: true, 
    buttons: { 
     Ok: function() { 
      $(this).dialog('close'); 
     } 
    } 
}); 

setTimeout(function(){ 
    dialog.dialog('destroy'); 
},5000); // 5 seconds 
}); 
+0

Sopra non funzionerà come 'dialog' non sarà definito nella funzione anonima passata a setTimeout – azatoth

+0

+1 - Funziona bene. – user113716

+0

Funziona perfettamente – user342391

0
function destroyDialog() { 
     $(".dialog-message.").dialog("destroy"); 
} 

setTimeout("destroyDialog()", 1000); 

Questo lo fa dopo 1 secondo, 1000 millisecondi ...

+0

Vorrei raccomandare di cambiare il setTimeout qui a setTimeout (destroyDialog, 1000); – azatoth

+0

Hai aggiunto un ". Finale" al selettore, e la tua funzione sarà chiamata contro lo spazio dei nomi globale, quindi 'destroyDialog()' dovrebbe essere definito globalmente. – user113716

Problemi correlati