在页面上移动 Bootstrap 模式

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

我的屏幕上有一个引导模式。当模态框显示时,它位于屏幕中央。

<div class="modal fade" id="ua_dialog">
<div class="modal-dialog">
    <div class="modal-content">
        <div class="modal-header">
        <div class="modal-body">
        ....
        </div>
      </div>

我需要在屏幕上移动模态,因为覆盖了屏幕上的一些信息。用户应该能够向右、向左移动……等等。我可以这样做吗?有一些我可以使用的设置吗?或者用js?什么是最好的方法?谢谢!

bootstrap-modal
3个回答
10
投票

我想你需要这个:)

<link href="//maxcdn.bootstrapcdn.com/bootstrap/3.3.1/css/bootstrap.min.css" rel="stylesheet"/>
<script src="//code.jquery.com/jquery-1.10.2.js"></script>
<script src="//code.jquery.com/ui/1.11.2/jquery-ui.js"></script>

<script src="//maxcdn.bootstrapcdn.com/bootstrap/3.3.1/js/bootstrap.min.js"></script>
<div>
<div class="modal fade">
  <div class="modal-dialog">
    <div class="modal-content">
      <div class="modal-header">
        <button type="button" class="close" data-dismiss="modal"><span aria-hidden="true">&times;</span><span class="sr-only">Close</span></button>
        <h4 class="modal-title">Modal title</h4>
      </div>
      <div class="modal-body">
        <p>One fine body&hellip;</p>
      </div>
      <div class="modal-footer">
        <button type="button" class="btn btn-default" data-dismiss="modal">Close</button>
        <button type="button" class="btn btn-primary">Save changes</button>
      </div>
    </div><!-- /.modal-content -->
  </div><!-- /.modal-dialog -->
</div><!-- /.modal --> 
</div>

<script>
        $('.modal').modal({ keyboard: false,
                           show: true
        });
        // Jquery draggable
        $('.modal-dialog').draggable({
            handle: ".modal-header"
        });
</script>  


0
投票

.modal-content{
    margin-top:50px !important;
}


0
投票

Espero les ayude este código,trate de integrar a mi proyectodraggable,pero no pude,ya que mi jqueryera incompatible,así quebuscando pude encontrar la solución con el manejo de eventos,y este es el resultado:

/*------------------------------------------------------------- Llamada al evento*/
    
    draggable(document.querySelector('#mimodal'), '.modal-head')
    
    /*------------------------------------------------------------- Mover modal*/
    
    function mover_mouse({ movementX, movementY }) {
        let getContainerStyle = window.getComputedStyle(mover_modal)
        let leftValue = parseInt(getContainerStyle.left)
        let topValue = parseInt(getContainerStyle.top)`enter code here`
        mover_modal.style.left = `${leftValue + movementX}px`
        mover_modal.style.top = `${topValue + movementY}px`
    }
    
    const draggable = (id, handle) => {
        mover_modal = id
        window.jQuery(handle).on('mousedown', () => { mover_modal.addEventListener('mousemove', mover_mouse) })
        window.jQuery(handle).on('mouseup contextmenu', () => { mover_modal.removeEventListener('mousemove', mover_mouse) })
    }

© www.soinside.com 2019 - 2024. All rights reserved.