【发布时间】:2012-07-29 17:57:45
【问题描述】:
我已经设法让我的 Block UI 模态死点,但现在的问题是,当窗口 调整大小(变小或变大),模态(和周围的覆盖)不会动态调整大小。有没有办法可以使用 jQuery 实现这一点?这是我到目前为止所做的:http://jsfiddle.net/2dpc7/。如果您尝试拖动“结果”窗格,那么您会看到模式并没有真正动态调整以适应。这是为什么呢?
HTML
<div style="float: left;">
<a id="about" class="windowClass" href="#">About</a> ·
<a id="terms" class="windowClass" href="#">Terms</a> ·
<a id="privacy" class="windowClass" href="#">Privacy</a> ·
<a id="language" class="windowClass" href="#">Language: English</a>
</div>
<div id="register_win" class="modal">
<span class="modal_header">Register</span>
<div class="modal_close">
<img src="http://www.ezpz.co.za/assets/close-button-25f4a789916c34b8c927d7d0ec98410b.gif" id="register_close">
</div>
</div>
<div id="about_win" class="modal">
<span class="modal_header">About</span>
<div class="modal_close">
<img src="http://www.ezpz.co.za/assets/close-button-25f4a789916c34b8c927d7d0ec98410b.gif" id="about_close">
</div>
</div>
<div id="terms_win" class="modal">
<span class="modal_header">Terms</span>
<div class="modal_close">
<img src="http://www.ezpz.co.za/assets/close-button-25f4a789916c34b8c927d7d0ec98410b.gif" id="terms_close">
</div>
</div>
<div id="privacy_win" class="modal">
<span class="modal_header">Privacy</span>
<div class="modal_close">
<img src="http://www.ezpz.co.za/assets/close-button-25f4a789916c34b8c927d7d0ec98410b.gif" id="privacy_close">
</div>
</div>
<div id="forgotpwd_win" class="modal">
<span class="modal_header">Forgotten your password?</span>
<div class="modal_close">
<img src="http://www.ezpz.co.za/assets/close-button-25f4a789916c34b8c927d7d0ec98410b.gif" id="forgotpwd_close">
</div>
</div>
<div id="language_win" class="modal">
<span class="modal_header">Language</span>
<div class="modal_close">
<img src="http://www.ezpz.co.za/assets/close-button-25f4a789916c34b8c927d7d0ec98410b.gif" id="language_close">
</div>
</div>
CSS
.modal {
display: none;
padding: 10px;
cursor: default;
}
.modal_header {
font-family: Verdana, Geneva, sans-serif;
float: left;
}
.modal_close {
cursor: pointer;
float: right;
}
JS
$(document).ready(function () {
$('.windowClass').click(function () { // <-- bind to all window elements with that class
$.blockUI({
message: $('#' + this.id + '_win'),
css: {
top: ($(window).height() - 200) /2 + 'px',
left: ($(window).width() - 200) /2 + 'px',
width: '200px'
}
});
});
$('[id$=_close]').click(function () { //<-- gets all elements with id's that end with close
$.unblockUI();
return false;
});
});
【问题讨论】:
-
在你的 CSS 中使用百分比,它会动态调整大小。你也可以创建一个监听器来调整大小:snipplr.com/view/9097
标签: jquery html css modal-dialog jquery-blockui