2016-05-31 4 views
0

Hier die jquery, wie man richtig ist nahe an eine modale durch jQuery

$(document).ready(function(){ 
$(".btn-add-menu").click(function(){ 
    $('.pace-done').addClass('no-pad'); 
    $("#myModalAddApplet").modal('hide'); 
}); 

}); 

Das Problem dabei ist, dass es erfolgreich die modale #myModalAddApplet versteckt, aber die neue modale es öffnet lang sind und die Bildlaufleiste funktioniert nicht mit Das Modal, nachdem dies passiert, habe ich versucht, es selbst zu debuggen und das Problem ist mit der Zeile $("#myModalAddApplet").modal('hide');, denn wenn ich diese Zeile auskommentieren dann funktioniert die Bildlaufleiste gut.

hier Wer mir beibringen kann, wie man richtig nahe oder meine modalen verstecken ...

PS. .btn-add-menu öffnet ein anderes modal ...

Antwort

1

Ihr Problem ist nicht in der jQuery-Code (es ist richtig), aber in der Tatsache, dass Sie zwingen, jQuery/Bootstrap zu schließen & öffnen Sie den Dialog zur gleichen Zeit. Sie sollten wirklich nicht zwei Aktionen (sowohl deklarative und imperative, insbesondere) auf einer einzigen Taste binden - das ist ein Antipattern & ist insgesamt eine schlechte Programmiergewohnheit.

den deklarativen Dialogaufruf Entfernen vom .btn-add-menu, um es in der jQuery Aktion bewegen und in einem Timeout wickelt zum vorherige Dialog Aktion erlauben abzuschließen:

$(".btn-add-menu").click(function(){ 
    $('.pace-done').addClass('no-pad'); 
    $("#myModalAddApplet").modal('hide'); 

    setTimeout(function() { 
     $("#otherApplet").modal('show'); 
    }, 
    500); 
}); 
+0

Danke so sehr, ich glaube, ich habe ein ändern Viele Codes, wenn das der Grund ist, warum es nicht richtig funktioniert hat ... – Beldion

Verwandte Themen