Bootstrap 带有 jQuery-UI 可拖动的对话框也会拖动模态区域
Bootstrap Dialog with jQuery-UI draggable drags the modal area around too
当我打开 Bootstrap 对话框并使用 jQuery 的可拖动功能拖动它时,我也拖动了模态区域。
问题是如果我将对话框向下和向右拖动 100 像素,网站的顶部和左侧就不再是模态了。
如何避免这种效果,使对话框旁边的所有内容始终是模态的?
我使用:
Bootstrap: 3.1.1
jQuery: jquery-2.1.1
jQuery-UI: jQuery-UI.1.11.2.js
代码示例:
<!-- Modal -->
<div class="modal fade" id="myModal" tabindex="-1" role="dialog" aria-labelledby="myModalLabel" aria-hidden="true">
<div class="modal-dialog">
<div class="modal-content">
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">×</span></button>
<h4 class="modal-title" id="myModalLabel">Modal title</h4>
</div>
<div class="modal-body">
...
</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>
</div>
</div>
<script>
$("#myModal").draggable({
handle: ".modal-header"
});
</script>
我的心态是错误的。并且应该先阅读 jQuery-UI 文档。
原来我只是拖错了 DOM 元素。
解法:
<script>
$(".modal-dialog").draggable({
handle: ".modal-header"
});
</script>
当我打开 Bootstrap 对话框并使用 jQuery 的可拖动功能拖动它时,我也拖动了模态区域。 问题是如果我将对话框向下和向右拖动 100 像素,网站的顶部和左侧就不再是模态了。
如何避免这种效果,使对话框旁边的所有内容始终是模态的?
我使用:
Bootstrap: 3.1.1
jQuery: jquery-2.1.1
jQuery-UI: jQuery-UI.1.11.2.js
代码示例:
<!-- Modal -->
<div class="modal fade" id="myModal" tabindex="-1" role="dialog" aria-labelledby="myModalLabel" aria-hidden="true">
<div class="modal-dialog">
<div class="modal-content">
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">×</span></button>
<h4 class="modal-title" id="myModalLabel">Modal title</h4>
</div>
<div class="modal-body">
...
</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>
</div>
</div>
<script>
$("#myModal").draggable({
handle: ".modal-header"
});
</script>
我的心态是错误的。并且应该先阅读 jQuery-UI 文档。
原来我只是拖错了 DOM 元素。
解法:
<script>
$(".modal-dialog").draggable({
handle: ".modal-header"
});
</script>