2010-05-30 23 views
5

Jak mogę zniszczyć okno dialogowe po przekroczeniu liczby sekund ?????Jquery niszczy okno dialogowe po x sekundach

To jest mój kod:

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

</script> 
+4

questionmarks nie jucznych zwierząt:/ – LukeN

Odpowiedz

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

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

Above przyzwyczajenie praca jako 'dialog' nie będzie zdefiniowany w anonimowej funkcji przekazanej do setTimeout – azatoth

+0

+1 - To działa dobrze. – user113716

+0

Działa bezbłędnie – user342391

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

setTimeout("destroyDialog()", 1000); 

to robi to po 1 sekundzie, 1000 milisekund ...

+0

Polecam zmienić setTimeout tutaj na setTimeout (destroyDialog, 1000); – azatoth

+0

Dodałeś przedrostek '.' do selektora, a twoja funkcja zostanie wywołana przeciwko globalnej przestrzeni nazw, więc' destroyDialog() 'musi być zdefiniowana globalnie. – user113716

Powiązane problemy