2016-10-08 13 views
0

このコードはクラスを追加してから遅延を完全に削除することになっています。 divを削除するだけにジャンプします。なぜどんなアイデア?クリックしてJqueryモーダルを追加してからクラスを削除します

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

click関数内でsetTimeout関数を作成する方が良いとは思わないでしょうか? –

+1

[jQuery遅延が動作しない]重複している可能性があります(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

すごくありがとう! –

関連する問題