2016-10-08 2 views
0

Этот бит кода должен добавить класс, а затем с задержкой удалить div целиком. Он просто переходит к удалению div. Любые идеи почему?JQuery Modal при щелчке добавить класс, а затем удалить

HTML-

<!-- modal conent--> 
    <div class="modal" id="modal"> 
    <div class="modal-content "> 
     <h1>Tricks Are 4 Kids</h1> 
    <p>Ok so my modal doesn't look like this one, but this is it boiled down. Can I write the JS better??? ....</p> 
     <button href="#" class="close" id="close" >X</button> 
     </div> 
    </div> 
    </div> 
<!-- page conent--> 
    <div id="page-content-wrapper" >I am a div with all the page conent. lalalalala</div> 

CSS-

.red {background:red;} 

JQuery

$(document).ready(function() { 
    $("#close").click(function() { 
     $("#modal").addClass("red").delay(800).queue 
     $("#modal").remove(); 
    }); 

Codepen https://codepen.io/Ella33/pen/GjQZRP

+0

Не было бы лучше сделать функцию setTimeout в функции щелчка? –

+1

Возможный дубликат [jQuery delay not working] (http://stackoverflow.com/questions/4544126/jquery-delay-not-working) – MJH

ответ

0
$(document).ready(function() { 
    $("#close").click(function() { 
    $("#modal").addClass("red"); 
    setTimeout(function() { 
     $("#modal").remove(); 
    }, 800); 
}); 
+0

Удивительно большое вам спасибо! –

Смежные вопросы