javascript - 当滚动条到达底部时激活按钮

标签 javascript css twitter-bootstrap-3

我的条款和条件有一个模式。现在,我想创建我的模式按钮,当我的客户通过滚动遇到模式的 100% 底部时激活。确保客户已阅读甚至看到我网站的条款和条件。

.modal-body {
    max-height: calc(100vh - 210px);
    overflow-y: auto;
}
<script src="https://code.jquery.com/jquery-3.2.1.min.js"></script>
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js"></script>
<link href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css" rel="stylesheet"/>
<!-- Button trigger modal -->
<button class="btn btn-primary btn-lg" data-toggle="modal" data-target="#myModal">
  Launch demo modal
</button>

<div id="myModal" class="modal fade">
    <div class="modal-dialog">
        <div class="modal-content">
            <div class="modal-header">
                <button type="button" class="close" data-dismiss="modal" aria-hidden="true">&times;</button>
                <h4 class="modal-title">Modal title</h4>
            </div>
            <div class="modal-body">
                <p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque vel vehicula erat. Phasellus vestibulum leo eu mi tempor blandit. Suspendisse eget iaculis lectus. Donec vitae tempus enim, quis tristique magna. Donec lobortis, sem ac pretium viverra, leo nisl consequat arcu, sit amet ullamcorper nunc turpis ac erat. In rutrum auctor ligula, quis mattis enim lacinia eu. Aliquam at magna a erat laoreet iaculis quis a justo. Donec porttitor vulputate massa, nec suscipit nisi mollis sed.</p>
                <p>Praesent sit amet porttitor magna, auctor feugiat tellus. Sed venenatis tortor turpis, vel vestibulum eros pulvinar et. Pellentesque hendrerit diam quis dui euismod tincidunt. Sed sit amet mauris ipsum. Integer in magna tellus. In tincidunt mi quis nunc gravida sollicitudin. Aliquam ac dui eget erat consequat volutpat in eu magna.</p>
                <p>Sed feugiat bibendum leo consequat convallis. Donec facilisis, turpis a scelerisque venenatis, felis diam dictum tortor, vitae imperdiet tortor ligula eu lectus. Donec iaculis semper elementum. Nullam dapibus porttitor magna quis convallis. Morbi porttitor quam non magna ullamcorper rhoncus. Phasellus sit amet nunc at turpis pharetra luctus a a massa. Praesent luctus massa in odio faucibus eleifend.</p>
                <p>In eget lobortis leo, ut luctus odio. Mauris pharetra erat ac tellus hendrerit semper. Cras faucibus ipsum id ante hendrerit rutrum. Donec vitae ullamcorper arcu. Aliquam pellentesque faucibus placerat. Aliquam erat volutpat. In tincidunt metus sit amet ligula sagittis vehicula. Pellentesque velit quam, hendrerit a erat ac, fermentum tincidunt enim. Cras suscipit justo nec consectetur lacinia.</p>
                <p>Cras pellentesque urna a leo egestas, at ullamcorper augue suscipit. Nulla id lacinia magna, non iaculis est. Praesent a placerat augue, eget eleifend purus. Aenean dignissim, orci et rutrum facilisis, tellus massa porta nulla, quis hendrerit dui ipsum vitae urna. In mattis lectus dolor, id venenatis lectus pellentesque at. Suspendisse posuere metus vel bibendum dignissim. Fusce interdum magna id libero scelerisque suscipit. Duis orci augue, rhoncus eget pharetra ac, viverra nec magna. In accumsan nulla ac suscipit pellentesque. Nulla iaculis luctus tellus, at ultricies urna hendrerit a. Aenean vehicula sodales varius. Duis sodales hendrerit odio non sagittis.</p>
            </div>
            <div class="modal-footer">
                <button type="button" class="btn btn-default disabled" data-dismiss="modal">Close</button>
            </div>
        </div>
        <!-- /.modal-content -->
    </div>
    <!-- /.modal-dialog -->
</div>
<!-- /.modal -->

最佳答案

你可以试试下面的代码:

$(".modal-body").scroll(function(){
    var height = $(".modal-body").scrollTop();
    var htOfDiv = $(".modal-body").prop('scrollHeight')-$(".modal-body").height()-30    
    if(height  >= htOfDiv) {
        $(".modalClose").attr("disabled",false)
    }
});

还要确保模态的关闭按钮应该有modalClose类。

下面是 fiddle 链接: https://jsfiddle.net/nisheshpratap/7hwrawja/

关于javascript - 当滚动条到达底部时激活按钮,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43806945/

相关文章:

javascript - 带有 img 和覆盖的 ng-mouseenter 和 ng-mouseleave 导致它闪烁

css - 如何在 bootstrap 3.3.7 中强制将导航栏切换到 Brand 的左侧

css - 具有线性渐变溢出的多个背景图像

javascript - 检索二维数组的选定列

javascript - 为什么浏览器有时会阻止弹出窗口,有时则不会?

javascript - 函数链中的 D3 console.log

单击按钮时 HTML5/CSS3 slider 滚动到顶部

html - 悬停时将 CSS 菜单标题悬停属性更改为橙色

javascript - 如何在 Bootstrap DateTimePicker 中禁用时间?

javascript - 为什么我的 jquery slider 跳动和滞后?