如何在关闭时删除BS模态(它在scroll()上加载)

时间:2014-10-09 03:50:52

标签: jquery twitter-bootstrap-3 modal-dialog

我有条件在滚动至少200像素后启动模态窗口。 如何在关闭时删除此模态并防止在滚动时出现?

$(window).scroll(function(){

var scrollTop = $(window).scrollTop();

if ( scrollTop > 200 ) {

    // Modal Suscribe box
    setTimeout(function() {
        $('#suscribe').modal('show');
    }, 4000);

} 
//code goes on with other functions...

HTML 类似于BS示例页面:

<button type="button" class="close" data-dismiss="modal"><span aria-hidden="true">X</span><span class="sr-only">Close</span></button>
谢谢你!

1 个答案:

答案 0 :(得分:1)

我从您的要求中理解的是“只有在滚动大小> 200时,模态窗口才会出现,如果用户关闭,则不应出现。”为此,您可以使用一个bool变量来实现此目的:

window.is_once_opened  = false;
$(window).scroll(function() {    
  var scrollTop = $(window).scrollTop();    
  if ( scrollTop > 200 && !is_once_opened ) {    
    is_once_opened  = true;
    // Modal Suscribe box
    setTimeout(function() {
        $('#suscribe').modal('show');
    }, 4000);
  }
}

如果你想要不同的东西,请告诉我。