Bootstrap 4和Bootbox主体水平滚动?

问题描述 投票:0回答:1

我有一排长名称的列。我必须在启动对话框中显示此数据。这是我的代码示例:

$(function() {
  $('[data-toggle="tooltip"]').tooltip()
})

$('.open-dialog').on('click', function() {
  var dialog_msg = $('.container').html();
  bootbox.alert({
    size: "xl",
    title: "Dialog Title",
    message: dialog_msg,
    callback: function(){ /* your callback code */ }
  })
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0/css/bootstrap.min.css" integrity="sha384-Gn5384xqQ1aoWXA+058RXPxPg6fy4IWvTNh0E263XmFcJlSAwiGgFAW/dAiS6JXm" crossorigin="anonymous">
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/4.7.0/css/font-awesome.min.css">
<script src="https://code.jquery.com/jquery-3.2.1.slim.min.js" integrity="sha384-KJ3o2DKtIkvYIK3UENzmM7KCkRr/rE9/Qpg6aAZGJwFDMVNA/GpGFF93hXpG5KkN" crossorigin="anonymous"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.12.9/umd/popper.min.js" integrity="sha384-ApNbgh9B+Y1QKtv3Rn7W3mgPxhU9K/ScQsAP7hUibX39j7fakFPskvXusvfa0b4Q" crossorigin="anonymous"></script>
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0/js/bootstrap.min.js" integrity="sha384-JZR6Spejh4U02d8jOt6vLEHfe/JQGiRRSQQxSfFWpi1MquVdAyjUar5+76PVCmYl" crossorigin="anonymous"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/bootbox.js/4.4.0/bootbox.min.js"></script>

<button type="button" class="btn btn-secondary open-dialog">Show Dialog</button>

<div class="container" style="display: none">
  <div class="row border rounded">
    <div class="col-1 font-weight-bold text-nowrap"><i class="fa fa-info-circle" aria-hidden="true" data-toggle="tooltip" data-placement="right" title="Tooltip for Column 1"></i> Column 1</div>
    <div class="col-1 font-weight-bold text-nowrap"><i class="fa fa-info-circle" aria-hidden="true" data-toggle="tooltip" data-placement="right" title="Tooltip for Column 2"></i> Column 2</div>
    <div class="col-1 font-weight-bold text-nowrap"><i class="fa fa-info-circle" aria-hidden="true" data-toggle="tooltip" data-placement="right" title="Tooltip for Column 3"></i> Column 3</div>
    <div class="col-1 font-weight-bold text-nowrap"><i class="fa fa-info-circle" aria-hidden="true" data-toggle="tooltip" data-placement="right" title="Tooltip for Column 4"></i> Column 4</div>
    <div class="col-1 font-weight-bold text-nowrap"><i class="fa fa-info-circle" aria-hidden="true" data-toggle="tooltip" data-placement="right" title="Tooltip for Column 5"></i> Column 5</div>
    <div class="col-1 font-weight-bold text-nowrap"><i class="fa fa-info-circle" aria-hidden="true" data-toggle="tooltip" data-placement="right" title="Tooltip for Column 6"></i> Column 6</div>
    <div class="col-1 font-weight-bold text-nowrap"><i class="fa fa-info-circle" aria-hidden="true" data-toggle="tooltip" data-placement="right" title="Tooltip for Column 7"></i> Column 7</div>
    <div class="col-1 font-weight-bold text-nowrap"><i class="fa fa-info-circle" aria-hidden="true" data-toggle="tooltip" data-placement="right" title="Tooltip for Column 8"></i> Column 8</div>
    <div class="col-1 font-weight-bold text-nowrap"><i class="fa fa-info-circle" aria-hidden="true" data-toggle="tooltip" data-placement="right" title="Tooltip for Column 9"></i> Column 9</div>
    <div class="col-1 font-weight-bold text-nowrap"><i class="fa fa-info-circle" aria-hidden="true" data-toggle="tooltip" data-placement="right" title="Tooltip for Column 10"></i> Column 10</div>
    <div class="col-1 font-weight-bold text-nowrap"><i class="fa fa-info-circle" aria-hidden="true" data-toggle="tooltip" data-placement="right" title="Tooltip for Column 11"></i> Column 11</div>
    <div class="col-1 font-weight-bold text-nowrap"><i class="fa fa-info-circle" aria-hidden="true" data-toggle="tooltip" data-placement="right" title="Tooltip for Column 12"></i> Column 12</div>
  </div>
</div>

如您在上面的示例中看到的,对话框中的列不适合。我想在Bootbox对话框中进行水平滚动。有没有办法通过Bootbox对话框或Bootstrap 4解决此问题?

谢谢。

bootstrap-4 bootbox
1个回答
0
投票

您的代码段存在一些问题(与jQuery重复),并且您使用的Bootbox版本(4.4.0)不支持xl大小。忽略那些...

使用className选项将自定义CSS类添加到对话框中,然后添加规则以进行水平滚动:

bootbox.alert({
    /* ... your existing options ... */

    className: 'scroll-modal-body-horizontal'
});

然后

.scroll-modal-body-horizontal .modal-body
{
    max-width: 100%;
    overflow-x: auto;
}

您的代码段,已更新,并且已修复一些参考:

$(function() {
  $('[data-toggle="tooltip"]').tooltip()
})

$('.open-dialog').on('click', function() {
  var dialog_msg = $('.container').html();
  bootbox.alert({
    size: "xl",
    title: "Dialog Title",
    message: dialog_msg,
    className: 'scroll-modal-body-horizontal',
    callback: function(){ /* your callback code */ }
  })
});
    .scroll-modal-body-horizontal .modal-body
    {
        max-width: 100%;
        overflow-x: auto;
    }
<link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.5.0/css/bootstrap.min.css" integrity="sha384-9aIt2nRpC12Uk9gS9baDl411NQApFmC26EwAOH8WgZl5MYYxFfc+NcPb1dKGj7Sk" crossorigin="anonymous">
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/4.7.0/css/font-awesome.min.css">

<script src="https://code.jquery.com/jquery-3.5.1.slim.min.js" integrity="sha384-DfXdz2htPH0lsSSs5nCTpuj/zy4C+OGpamoFVy38MVBnE+IbbVYUew+OrCXaRkfj" crossorigin="anonymous"></script>
<script src="https://cdn.jsdelivr.net/npm/[email protected]/dist/umd/popper.min.js" integrity="sha384-Q6E9RHvbIyZFJoft+2mJbHaEWldlvI9IOYy5n3zV9zzTtmI3UksdQRVvoxMfooAo" crossorigin="anonymous"></script>
<script src="https://stackpath.bootstrapcdn.com/bootstrap/4.5.0/js/bootstrap.min.js" integrity="sha384-OgVRvuATP1z7JjHLkuOU7Xw704+h835Lr+6QL9UvYjZE3Ipu6Tp75j7Bh/kR0JKI" crossorigin="anonymous"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/bootbox.js/5.4.0/bootbox.min.js" integrity="sha256-sfG8c9ILUB8EXQ5muswfjZsKICbRIJUG/kBogvvV5sY=" crossorigin="anonymous"></script>

<button type="button" class="btn btn-secondary open-dialog">Show Dialog</button>

<div class="container" style="display: none">
  <div class="row border rounded">
    <div class="col-1 font-weight-bold text-nowrap"><i class="fa fa-info-circle" aria-hidden="true" data-toggle="tooltip" data-placement="right" title="Tooltip for Column 1"></i> Column 1</div>
    <div class="col-1 font-weight-bold text-nowrap"><i class="fa fa-info-circle" aria-hidden="true" data-toggle="tooltip" data-placement="right" title="Tooltip for Column 2"></i> Column 2</div>
    <div class="col-1 font-weight-bold text-nowrap"><i class="fa fa-info-circle" aria-hidden="true" data-toggle="tooltip" data-placement="right" title="Tooltip for Column 3"></i> Column 3</div>
    <div class="col-1 font-weight-bold text-nowrap"><i class="fa fa-info-circle" aria-hidden="true" data-toggle="tooltip" data-placement="right" title="Tooltip for Column 4"></i> Column 4</div>
    <div class="col-1 font-weight-bold text-nowrap"><i class="fa fa-info-circle" aria-hidden="true" data-toggle="tooltip" data-placement="right" title="Tooltip for Column 5"></i> Column 5</div>
    <div class="col-1 font-weight-bold text-nowrap"><i class="fa fa-info-circle" aria-hidden="true" data-toggle="tooltip" data-placement="right" title="Tooltip for Column 6"></i> Column 6</div>
    <div class="col-1 font-weight-bold text-nowrap"><i class="fa fa-info-circle" aria-hidden="true" data-toggle="tooltip" data-placement="right" title="Tooltip for Column 7"></i> Column 7</div>
    <div class="col-1 font-weight-bold text-nowrap"><i class="fa fa-info-circle" aria-hidden="true" data-toggle="tooltip" data-placement="right" title="Tooltip for Column 8"></i> Column 8</div>
    <div class="col-1 font-weight-bold text-nowrap"><i class="fa fa-info-circle" aria-hidden="true" data-toggle="tooltip" data-placement="right" title="Tooltip for Column 9"></i> Column 9</div>
    <div class="col-1 font-weight-bold text-nowrap"><i class="fa fa-info-circle" aria-hidden="true" data-toggle="tooltip" data-placement="right" title="Tooltip for Column 10"></i> Column 10</div>
    <div class="col-1 font-weight-bold text-nowrap"><i class="fa fa-info-circle" aria-hidden="true" data-toggle="tooltip" data-placement="right" title="Tooltip for Column 11"></i> Column 11</div>
    <div class="col-1 font-weight-bold text-nowrap"><i class="fa fa-info-circle" aria-hidden="true" data-toggle="tooltip" data-placement="right" title="Tooltip for Column 12"></i> Column 12</div>
  </div>
</div>
© www.soinside.com 2019 - 2024. All rights reserved.