我在一个看起来很完美的页面中构建了2个响应式Owl-carousel-v2。 在我将它们放入标签后,第一个旋转木马工作但是标签面板后面的一个丢失了它的项目宽度,我无法使其工作。 如果我有所有具有一定宽度的项目,则所有项目将垂直列出。
这是我的演示笔: http://codepen.io/bard/pen/NxqyQy/
我猜问题是在页面加载时计算项目宽度。
如何解决这个问题?
HTML:
<ul class="nav nav-tabs">
<li class="active"><a data-toggle="tab" href="#track1">Track1</a></li>
<li><a data-toggle="tab" href="#track2">Track2</a></li>
</ul>
<div class="panel tab-content">
<div id="track1" class="panel-body tab-pane fade in active">
<div class="container-fluid tracker">
<div class="wrapper-with-margin">
<div id="owl-demo" class="owl-carousel">
<div class="item" style="">1</div>
<div class="item" style="">2</div>
<div class="item" style="">3</div>
<div class="item" style="">4</div>
<div class="item" style="">5</div>
<div class="item" style="">6</div>
<div class="item" style="">7</div>
<div class="item" style="">8</div>
<div class="item" style="">9</div>
</div>
</div>
</div>
</div>
<div id="track2" class="panel-body tab-pane fade">
<div class="container-fluid tracker">
<div class="wrapper-with-margin">
<div id="owl-demo2" class="owl-carousel">
<div class="item" style="">9</div>
<div class="item" style="">8</div>
<div class="item" style="">7</div>
<div class="item" style="">6</div>
<div class="item" style="">5</div>
<div class="item" style="">4</div>
<div class="item" style="">3</div>
<div class="item" style="">2</div>
<div class="item" style="">1</div>
</div>
</div>
</div>
</div>
</div>
答案 0 :(得分:3)
你可以用一些CSS来解决这个问题。猫头鹰轮播在初始化时根据容器宽度调整项目大小。由于该div是隐藏的,因此没有宽度可供引用,这导致了一堆。你可以用css来纠正这个:
.tab-content>.tab-pane {
display: block;
width: 100%;
height: 0;
padding: 0;
}
.active .tab-content>.tab-pane {
height: auto;
padding: 15px;
}
更新了笔:http://codepen.io/anon/pen/vLNNem
您也可以在用户点击第二个标签后更改您的javascript以初始化第二个轮播,但我可能只是以CSS的方式进行。
答案 1 :(得分:3)
问题在于选项卡切换'display:none'/'display:block'并且轮播不知道激活的选项卡内容的新宽度,这就是它看起来崩溃的原因;
要修复它,你可以使用不同的方法隐藏/显示标签,例如CSS中的这样,然后在jQuery中切换这些类:
.tab-hidden {
visibility: hidden;
height: 0;
overflow: hidden;
opacity: 0;
transition: all 0.5s ease;
}
.tab-visible {
visibility: visible;
height: auto;
overflow: visible;
opacity: 1;
transition: all 0.5s ease;
}
您可以在此处测试工作代码: http://codepen.io/slyka85/pen/MbpXxp