在 Bootstrap 中,.container 类的宽度响应屏幕宽度,低于 768 像素的屏幕宽度是流动的,但小于 720 像素。您可以使用该特性来打开或关闭可调整大小的功能:
html
<div class="container">
<div class="row">
<div id="resizable" class="col-xs-12" style="background-color:green;">column 1</div>
<div id="mirror" class="col-xs-12" style="background-color:red;">column 2</div>
</div>
</div>
javascript
if($('.col-xs-12').width()>720 && $('.col-xs-12').width()==$('.container').width())
{
$( "#resizable" ).resizable({ maxWidth: $('.container').width()-200 });
$( "#resizable" ).on( "resize",
function( event, ui ) {
$('#mirror').css('width', $('.container').width() - $( "#resizable" ).width() );
});
$('.col-xs-12').css('width','50%');
}
您可能还希望您的列在屏幕宽度发生变化时进行调整:
$( window ).resize(function() {
if($('.container').width()<=720){
$('.col-xs-12').css('width','100%');
$( "#resizable" ).resizable({ disabled: true });
}
else {
$( "#resizable" ).resizable({ disabled: false });
if($('.col-xs-12').width()==$('.container').width())$('.col-xs-12').css('width','50%');
else {
$( "#resizable" ).css('width',( $('#resizable').width() / ($('#resizable').width() + $('#mirror').width()) ) * $('.container').width());
$('#mirror').css('width', $('.container').width() - $( "#resizable" ).width() - 15 );
}
}
});
演示:http://www.bootply.com/zfNflrRg83
更新
谢谢!我不想使用容器,因为它在
结束。另外,我需要这些列的大小为 col-md-4 和
col-md-8..
我认为您可以使用如下所示的container-fluid 类:
<div class="container-fluid" style="padding:0;">
<div class="row" style="margin:0;">
<div id="resizable" class="col-xs-12 col-md-4" style="background-color:green;">column 1</div>
<div id="mirror" class="col-xs-12 col-md-8" style="background-color:red;">column 2</div>
</div>
</div>
和javascript:
$(function() {
if($('.container-fluid').innerWidth()>992)
{
$( "#resizable" ).resizable({ maxWidth: $('.container-fluid').innerWidth()-200 });
}
$( window ).resize(function() {
if($('.container-fluid').innerWidth()<=992){
$('.col-xs-12').css('width','100%');
$( "#resizable" ).resizable({ disabled: true });
}
else {
if($("#resizable").innerWidth()===$('.container-fluid').innerWidth())
{
$('.col-xs-12').css('width','');
}
$( "#resizable" ).resizable({ disabled: false, maxWidth: $('.container-fluid').innerWidth()-200 });
$('#mirror').css('width', Math.floor($('.container-fluid').innerWidth() - $( "#resizable" ).innerWidth()));
}
});
});